import { type KeyboardEvent } from "react";
import { type IAutomationRecipient, type INotificationChannelIdentifier, type INotificationChannelMetadataObject, type IWorkspaceUser } from "@gooddata/sdk-model";
import { type GoodDataSdkError } from "@gooddata/sdk-ui";
interface IRecipientsSelectProps {
    /**
     * Users to select from
     */
    users: IWorkspaceUser[];
    /**
     * Error occurred while loading users
     */
    usersError?: GoodDataSdkError;
    /**
     * Currently selected recipients.
     */
    value: IAutomationRecipient[];
    /**
     * Originally selected recipients of a edited schedule
     */
    originalValue: IAutomationRecipient[];
    /**
     * Callback to be called, when recipients are changed.
     */
    onChange: (recipientEmails: IAutomationRecipient[]) => void;
    /**
     * Currently logged in user as a recipient
     */
    loggedUser?: IWorkspaceUser;
    /**
     * Allow to select only me as a recipient
     */
    allowOnlyLoggedUserRecipients?: boolean;
    /**
     * Allow to remove the last recipient
     */
    allowEmptySelection?: boolean;
    /**
     * Allow to select external recipients
     */
    allowExternalRecipients?: boolean;
    /**
     * Maximum number of recipients
     */
    maxRecipients?: number;
    /**
     * Additional class name
     */
    className?: string;
    /**
     * Notification channels
     */
    notificationChannels?: INotificationChannelIdentifier[] | INotificationChannelMetadataObject[];
    /**
     * Notification channel id
     */
    notificationChannelId?: string;
    /**
     * Show label?
     */
    showLabel?: boolean;
    /**
     * Id
     */
    id: string;
    /**
     * Handle keyboard submit
     */
    onKeyDownSubmit?: (e: KeyboardEvent) => void;
    /**
     * Override recipients with an external recipient
     */
    externalRecipientOverride?: string;
}
export declare function RecipientsSelect({ id, users, usersError, value, originalValue, onChange, loggedUser, allowEmptySelection, allowExternalRecipients, allowOnlyLoggedUserRecipients, maxRecipients, className, notificationChannels, notificationChannelId, showLabel, onKeyDownSubmit, externalRecipientOverride }: IRecipientsSelectProps): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=RecipientsSelect.d.ts.map