import { AbstractUiComponent } from "./AbstractUiComponent";
import { TeamAppsUiContext } from "./TeamAppsUiContext";
import { UiChatInput_FileItemClickedEvent, UiChatInput_FileItemRemovedEvent, UiChatInput_MessageSentEvent, UiChatInput_UploadCanceledEvent, UiChatInput_UploadFailedEvent, UiChatInput_UploadStartedEvent, UiChatInput_UploadSuccessfulEvent, UiChatInput_UploadTooLargeEvent, UiChatInputCommandHandler, UiChatInputConfig, UiChatInputEventSource } from "../generated/UiChatInputConfig";
import { TeamAppsEvent } from "./util/TeamAppsEvent";
export declare class UiChatInput extends AbstractUiComponent<UiChatInputConfig> implements UiChatInputCommandHandler, UiChatInputEventSource {
    onFileItemClicked: TeamAppsEvent<UiChatInput_FileItemClickedEvent>;
    onFileItemRemoved: TeamAppsEvent<UiChatInput_FileItemRemovedEvent>;
    onMessageSent: TeamAppsEvent<UiChatInput_MessageSentEvent>;
    onUploadCanceled: TeamAppsEvent<UiChatInput_UploadCanceledEvent>;
    onUploadFailed: TeamAppsEvent<UiChatInput_UploadFailedEvent>;
    onUploadStarted: TeamAppsEvent<UiChatInput_UploadStartedEvent>;
    onUploadSuccessful: TeamAppsEvent<UiChatInput_UploadSuccessfulEvent>;
    onUploadTooLarge: TeamAppsEvent<UiChatInput_UploadTooLargeEvent>;
    private $main;
    private $uploadItems;
    private uploadItems;
    private $textInput;
    private $sendButton;
    private $attachmentButton;
    constructor(config: UiChatInputConfig, context: TeamAppsUiContext);
    private send;
    doGetMainElement(): HTMLElement;
    private upload;
    private updateSendability;
    private sendable;
    setAttachmentsEnabled(enabled: boolean): void;
}
