import Button from '.'; import { IState } from '@mjcloud/redux'; import { ButtonSize } from 'antd/lib/button'; import { PageAddress } from '@mjcloud/page/dist/typings'; import { ControlActionType } from '@mjcloud/instance/dist/base'; import { IEventArg } from '@mjcloud/utils/dist/events/eventListening'; import { IDictionary, IControlSetConfig, IControlConfig } from '@mjcloud/types'; import { IConfigStartLoadParams, IInitialStateParams, IConfigLoadedParams } from '@mjcloud/redux'; export declare type ButtonThemeType = 'icon' | 'anchor' | 'titleLink' | 'default' | 'primary' | 'ghost' | 'dashed' | 'danger'; export interface IButtonConfig extends IControlSetConfig { confirm: boolean; active: boolean; title: string; displayControl?: string; confirmTitle: string; controllerId?: string; icon?: string; tip?: string; theme: ButtonThemeType; size: ButtonSize; } export interface ButtonConfig extends IButtonConfig, IControlConfig { code: string; } export interface IButtonConfigStartLoadParams extends IConfigStartLoadParams { address: PageAddress; } export interface IButtonInitialStateParams extends IInitialStateParams { address: PageAddress; } export interface IButtonLoadedParams extends IConfigLoadedParams { } export interface IButtonConfirm { title: string; } export interface IButtonState extends IState { id: string; title: string; loading: boolean; disabled: boolean; size: ButtonSize; isAuthority: boolean; displayControl: string | undefined; theme: ButtonThemeType; _oldTheme: ButtonThemeType; confirm: IButtonConfirm | false; controllerId: string | undefined; icon: string | undefined; tip: string | undefined; } export declare type ButtonActionType = ControlActionType | 'clickAfter' | 'clickDone' | 'updateLoad' | 'updateTheme' | 'updateDisabled'; export interface IButtonUpdateThemeParams { theme: ButtonThemeType; } export declare type ButtonEventType = 'onAfterClick' | 'onBeforeClick'; interface IButtonAfterClickData extends IDictionary { } export interface IButtonAfterClickArg extends IEventArg { } interface IButtonBeforeClickData extends IDictionary { result: IDictionary; } export interface IButtonBeforeClickArg extends IEventArg { } interface IRowButtonAfterClickData extends IDictionary { rowId: number; row: IDictionary; } export interface IRowButtonAfterClickArg extends IEventArg { } interface IRowButtonBeforeClickData extends IDictionary { rowId: number; row: IDictionary; result: IDictionary; } export interface IRowButtonBeforeClickArg extends IEventArg { } export {};