import { EventEmitter } from "../../../stencil-public-runtime";
export declare class GxIdeBpmAssignRoles {
    /**
     * The component hard-coded strings translations.
     */
    private _componentLocale;
    private renderedFirstTime;
    el: HTMLGxIdeBpmAssignRolesElement;
    private unassignedRolesEL;
    private assignedRolesEl;
    unassignedRolesState: string[];
    assignedRolesState: string[];
    filterUnassignedInput: string;
    filterAssignedInput: string;
    unassignedSelected: boolean;
    assignedSelected: boolean;
    /**
     * If true it displays the component title on the header
     */
    readonly displayTitle = false;
    /**
     * Array with all available roles
     */
    readonly roles: string[];
    /**
     * Array with currently assigned roles
     */
    readonly assignedRoles: string[];
    /**
     * Callback invoked when user confirms assignation
     */
    readonly confirmCallback: ConfirmCallback;
    /**
     * Callback invoked when user cancels assignation
     */
    readonly cancelCallback: CancelCallback;
    /**
     * @description Gets fired when the component has rendered for the first time.
     */
    componentDidRenderFirstTime: EventEmitter<string>;
    componentWillLoad(): Promise<void>;
    componentDidRender(): void;
    private confirmCallbackHandler;
    private cancelCallbackHandler;
    private handleAssignedCheckedChange;
    private handleUnassignedCheckedChange;
    private handleUnassignedInput;
    private handleAssignedInput;
    private getCheckedItems;
    private addAll;
    private addSelectedRoles;
    private removeAll;
    private removeSelectedRoles;
    private renderRolesToAdd;
    private renderRolesToRemove;
    render(): any;
}
export type ConfirmCallback = (assignedRoles: string[]) => Promise<void>;
export type CancelCallback = () => Promise<void>;
