import { PropertyValues, TemplateResult } from "lit";
import "@openremote/or-components/or-panel";
import "@openremote/or-translate";
import { Store } from "@reduxjs/toolkit";
import { Page, PageProvider } from "@openremote/or-app";
import { AppStateKeyed } from "@openremote/or-app";
import { Role } from "@openremote/model";
export declare function pageRolesProvider(store: Store<AppStateKeyed>): PageProvider<AppStateKeyed>;
export declare class PageRoles extends Page<AppStateKeyed> {
    static get styles(): import("lit").CSSResult[];
    protected _compositeRoles: Role[];
    protected _roles: Role[];
    protected _rolesMapper: {};
    realm?: string;
    get name(): string;
    shouldUpdate(_changedProperties: PropertyValues): boolean;
    connectedCallback(): void;
    protected getState(): AppStateKeyed;
    protected getRoles(): Promise<void>;
    private _updateRoles;
    private _deleteRole;
    private doDelete;
    private addRemoveRole;
    private expanderToggle;
    protected render(): TemplateResult | void;
    stateChanged(state: AppStateKeyed): void;
}
//# sourceMappingURL=page-roles.d.ts.map