import type { Styles } from '@cleartrip/ct-design-types'; import { ReactNode, ReactElement } from 'react'; import type { ContainerRef } from '@cleartrip/ct-design-container'; import { ModalSize, ModalVariant, ModalPlacement, ActionButtonVariant, ActionButtonAlignment } from './constants'; export type ModalSizeTypes = `${ModalSize}`; type OwnModalProps = { footerAlignment?: 'start' | 'end' | 'center'; animationDuration?: number; }; export type ModalProps = IModalProps; export type ActionButtonVariantsType = `${ActionButtonVariant}`; export type ActionButtonAlignmentType = `${ActionButtonAlignment}`; export type ModalPlacementTypes = `${ModalPlacement}`; export type ModalVariantTypes = `${ModalVariant}`; export interface IChildProps { onClose?: () => void; } export interface IModalProps extends OwnModalProps { actionButtonAlignment?: ActionButtonAlignmentType; actionButtonType?: ActionButtonVariantsType; allowBackdropClose?: boolean; animationDuration?: number; backDropComponent?: ReactNode; blur?: boolean; children?: ReactElement<{ onClose?: () => void; }>; insidePortal?: boolean; onClose?: () => void; onKeyDown?: (event: React.KeyboardEvent) => void; open: boolean; placement?: ModalPlacementTypes; bottomMargin?: number; ref?: React.Ref; size?: ModalSizeTypes; styleConfig?: { root?: Styles[]; backdropStyles?: Styles[]; modalContentStyles?: Styles[]; actionButtonStyles?: Styles[]; }; variant?: ModalVariantTypes; hideCrossIcon?: boolean; } export {}; //# sourceMappingURL=type.d.ts.map