import { EventEmitter } from '@angular/core';
import { SplitButtonOption } from './models/split-button-option';
import { SplitButtonType } from './models/split-button-type';
import * as i0 from "@angular/core";
/**
 * @description Botão composto com ação principal e dropdown de opções adicionais.
 * Ao clicar no botão principal emite `buttonClicked`; ao clicar no ícone de seta
 * abre/fecha o dropdown com a lista de `options`.
 *
 * @example
 * ```html
 * <s-split-button
 *   label="Salvar"
 *   iconClass="fas fa-save"
 *   [options]="menuOpcoes"
 *   (buttonClicked)="onSalvar()" />
 * ```
 *
 * @category Inputs
 */
export declare class SplitButtonComponent {
    private readonly _eRef;
    /** @description Desabilita o botão principal e o dropdown. @default false */
    disabled: boolean;
    /** @description Classe do ícone exibido no botão principal. Campo obrigatório. */
    iconClass: string;
    /** @description Rótulo do botão principal. Campo obrigatório. */
    label: string;
    /** @description Estilo visual do botão (`'primary'` ou `'secondary'`). @default 'primary' */
    type: SplitButtonType;
    /** @description Lista de opções exibidas no dropdown. Campo obrigatório. */
    options: SplitButtonOption[];
    /** @description Emitido quando o usuário clica no botão principal (não no dropdown). */
    buttonClicked: EventEmitter<any>;
    open: boolean;
    onClickout(event: MouseEvent): void;
    onButtonClick(): void;
    onDropdownClick(): void;
    onOptionClick(option: SplitButtonOption): void;
    private _closeDropdown;
    static ɵfac: i0.ɵɵFactoryDeclaration<SplitButtonComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SplitButtonComponent, "s-split-button", never, { "disabled": { "alias": "disabled"; "required": false; }; "iconClass": { "alias": "iconClass"; "required": true; }; "label": { "alias": "label"; "required": true; }; "type": { "alias": "type"; "required": false; }; "options": { "alias": "options"; "required": true; }; }, { "buttonClicked": "buttonClicked"; }, never, never, true, never>;
}
