import { VNodeChild } from 'vue';
import { Fn } from '@maxax/types';
import { MaybeArray, Size, Type } from '../../types';
import { BasicButtonProps } from '../basic-button';
import { BasicMessageBoxProps } from '../basic-message-box';
export interface BasicTriggerButtonProps {
    size?: Size;
    type?: Type;
    icon?: string;
    color?: string;
    textColor?: string;
    text?: boolean;
    block?: boolean;
    loading?: boolean;
    disabled?: boolean;
    circle?: boolean;
    ghost?: boolean;
    round?: boolean;
    secondary?: boolean;
    tertiary?: boolean;
    quaternary?: boolean;
    strong?: boolean;
    focusable?: boolean;
    keyboard?: boolean;
    tag?: keyof HTMLElementTagNameMap;
    dashed?: boolean;
    renderIcon?: () => VNodeChild;
    iconPlacement?: 'left' | 'right';
    attrType?: 'button' | 'submit' | 'reset';
    bordered?: boolean;
    onClick?: MaybeArray<(e: MouseEvent) => void>;
    nativeFocusBehavior?: boolean;
    field?: string;
    validate?: (opt: {
        field?: string;
        schema: BasicTriggerButtonProps;
    }) => Promise<any> | boolean;
    confirm?: Fn;
    cancel?: Fn;
    message?: string;
    messageBoxProps?: BasicMessageBoxProps;
    buttonProps?: BasicButtonProps;
}
export interface BasicTriggerButtonContext {
    name: string;
}
//# sourceMappingURL=interface.d.ts.map