UNPKG

@appbuckets/react-ui-smart-components

Version:

UI Extended Components that work with @appbuckets/react-client and @appbuckets/react-ui

96 lines (95 loc) 2.75 kB
import * as React from 'react'; import type { BaseActionCancelHandler, BaseActionCompletedHandler, BaseActionHelpers, BaseActionSubmitErrorHandler, BaseActionSubmitHandler, BaseActionBuilderActions, BaseActionBuilderConfig, BaseActionBuilderNotifications, BaseActionBuilderProps, } from './BaseActionBuilder.types'; declare type PlainOrBuilder<TOut, Props extends {}, Result> = | TOut | ((props: ConfirmComponentProps<Props, Result>) => TOut); export interface ConfirmActionHelpers extends BaseActionHelpers {} export declare type ConfirmActionCancelHandler<Props extends {}> = BaseActionCancelHandler< ConfirmActionHelpers, ConfirmComponentProps<Props, any> >; export declare type ConfirmActionCompletedHandler< Props extends {}, Result > = BaseActionCompletedHandler< Result, void, false, ConfirmActionHelpers, ConfirmComponentProps<Props, Result> >; export declare type ConfirmActionSubmitHandler< Props extends {}, Result > = BaseActionSubmitHandler< Result, void, false, ConfirmActionHelpers, ConfirmComponentProps<Props, Result> >; export declare type ConfirmActionSubmitErrorHandler<Props extends {}> = BaseActionSubmitErrorHandler< void, false, ConfirmActionHelpers, ConfirmComponentProps<Props, any> >; export declare type ConfirmActions< Props extends {}, Result > = BaseActionBuilderActions< ConfirmActionCancelHandler<Props>, ConfirmActionCompletedHandler<Props, Result>, ConfirmActionSubmitHandler<Props, Result>, ConfirmActionSubmitErrorHandler<Props> >; export interface ConfirmBuilderNotifications extends BaseActionBuilderNotifications {} export declare type ConfirmComponentProps< Props extends {}, Result > = BaseActionBuilderProps<Props, ConfirmActions<Props, Result>>; export declare type ConfirmComponent< Props extends {}, Result > = React.FunctionComponent<ConfirmComponentProps<Props, Result>>; export declare type ExtensibleConfirmComponent< Props extends {}, Result > = ConfirmComponent<Props, Result> & { extend: <NewProps extends {}, NewResult = any>( config: ConfirmBuilderConfig<NewProps, NewResult> ) => ExtensibleConfirmComponent<NewProps, NewResult>; }; export interface ConfirmBuilderConfig<Props extends {}, Result> extends BaseActionBuilderConfig< ConfirmComponent<Props, Result>, ConfirmActions<Props, Result>, ConfirmBuilderNotifications > { /** The confirm modal default props to use */ defaultProps?: PlainOrBuilder< Partial<ConfirmComponentProps<Props, Result>>, Props, Result >; /** The confirm modal override props object */ overrideProps?: PlainOrBuilder< Partial<ConfirmComponentProps<Props, Result>>, Props, Result >; } export {};