import * as _angular_core from '@angular/core';
import { AfterViewInit, ElementRef } from '@angular/core';
import { ActionDropdownComponent } from '@agorapulse/ui-components';
import * as i1 from '@agorapulse/ui-components/directives';
import { BaseButtonDirective } from '@agorapulse/ui-components/directives';
import { SymbolComponent } from '@agorapulse/ui-symbol';
import { MatMenu } from '@angular/material/menu';

type SplitButtonConfig = {
    style: 'primary';
    color: 'orange' | 'blue';
};
declare class SplitButtonComponent implements AfterViewInit {
    private symbolRegistry;
    readonly baseButtonDirective: BaseButtonDirective;
    disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
    config: _angular_core.InputSignal<SplitButtonConfig>;
    actionDropdownTrigger: _angular_core.InputSignal<ActionDropdownComponent | undefined>;
    /** @deprecated use actionDropdownTrigger instead */
    menuTrigger: _angular_core.InputSignal<MatMenu | null>;
    splitDisabled: _angular_core.InputSignal<boolean>;
    symbolPosition: _angular_core.InputSignal<"left" | "right">;
    splitButtonDataTest: _angular_core.InputSignal<string | undefined>;
    symbolId: _angular_core.InputSignal<string | undefined>;
    name: _angular_core.InputSignal<string | undefined>;
    menuOpened: _angular_core.OutputEmitterRef<void>;
    menuClosed: _angular_core.OutputEmitterRef<void>;
    mainButtonClick: _angular_core.OutputEmitterRef<MouseEvent>;
    focus: _angular_core.OutputEmitterRef<FocusEvent>;
    blur: _angular_core.OutputEmitterRef<FocusEvent>;
    buttonElement: _angular_core.Signal<ElementRef<HTMLButtonElement>>;
    splitButtonElement: _angular_core.Signal<ElementRef<HTMLButtonElement>>;
    symbolComponent: _angular_core.Signal<SymbolComponent | undefined>;
    id: string;
    menuOpen: boolean;
    constructor();
    ngAfterViewInit(): void;
    onSplitButtonClickHandle($event: MouseEvent): void;
    handleMenuOpened(): void;
    handleMenuClosed(): void;
    focused: boolean;
    onClickHandle($event: MouseEvent): void;
    onSpaceKeyUp(event: KeyboardEvent): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<SplitButtonComponent, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<SplitButtonComponent, "ap-split-button", never, { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "config": { "alias": "config"; "required": false; "isSignal": true; }; "actionDropdownTrigger": { "alias": "actionDropdownTrigger"; "required": false; "isSignal": true; }; "menuTrigger": { "alias": "menuTrigger"; "required": false; "isSignal": true; }; "splitDisabled": { "alias": "splitDisabled"; "required": false; "isSignal": true; }; "symbolPosition": { "alias": "symbolPosition"; "required": false; "isSignal": true; }; "splitButtonDataTest": { "alias": "splitButtonDataTest"; "required": false; "isSignal": true; }; "symbolId": { "alias": "symbolId"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; }, { "menuOpened": "menuOpened"; "menuClosed": "menuClosed"; "mainButtonClick": "mainButtonClick"; "focus": "focus"; "blur": "blur"; }, ["symbolComponent"], ["span", "ap-symbol"], true, [{ directive: typeof i1.BaseButtonDirective; inputs: {}; outputs: {}; }]>;
}

export { SplitButtonComponent };
