import { EventEmitter } from '../../../stencil-public-runtime';
import { ITemplate, TRecipientType, VerdocsEndpoint } from '@verdocs/js-sdk';
import { SDKError } from '../../../utils/errors';
/**
 * Present an editing form suitable for adjusting template-role properties.
 */
export declare class VerdocsTemplateRoleProperties {
    private templateListenerId;
    /**
     * The endpoint to use to communicate with Verdocs. If not set, the default endpoint will be used.
     */
    endpoint: VerdocsEndpoint;
    /**
     * The template ID to edit.
     */
    templateId: string;
    /**
     * The role name to edit.
     */
    roleName: string;
    /**
     * Event fired when the user cancels the dialog.
     */
    close: EventEmitter;
    /**
     * Event fired when the user deletes the role. The parent should update its UI to reflect the removal. When this event is emitted,
     * the role will have already been deleted server-side.
     */
    delete: EventEmitter<{
        templateId: string;
        roleName: string;
    }>;
    /**
     * Event fired if an error occurs. The event details will contain information about the error. Most errors will
     * terminate the process, and the calling application should correct the condition and re-render the component.
     */
    sdkError: EventEmitter<SDKError>;
    dirty: boolean;
    saving: boolean;
    name: string;
    type: TRecipientType;
    first_name: string;
    last_name: string;
    email: string;
    phone: string;
    delegator: boolean;
    loading: boolean;
    template: ITemplate | null;
    componentWillLoad(): Promise<void>;
    disconnectedCallback(): void;
    listenToTemplate(): Promise<void>;
    unlistenToTemplate(): void;
    handleCancel(e: any): void;
    handleSave(e: any): Promise<void>;
    handleDelete(e: any): Promise<void>;
    render(): any;
}
