import { ReactNode } from 'react';
import { PaperFormSlots } from './slots/PaperFormEnum';
import { PAPER_FORM_KEY } from './constants';
import { Theme } from '@mui/material/styles';
import { ComponentPalletColor, Sizes } from '@m4l/styles';
import { PropertyValueProps } from '../PropertyValue/types';
import { M4LOverridesStyleRules } from '../../@types/augmentations';
export interface PaperFormProps {
    urlIcon?: string;
    title: string;
    children?: ReactNode | PropertyValueProps[];
    variant?: 'standard' | 'text' | 'onlyContainer';
    color?: Extract<ComponentPalletColor, 'default'>;
    size?: Extract<Sizes, 'small' | 'medium'>;
    isForm?: boolean;
    dataTestId?: string;
    border?: boolean;
    height?: 'auto' | 'full';
}
/**
 * ***************************************
 * Interfaz de propiedades comunes usadas
 * en HeaderProps y PaperFormOwnerState
 * ***************************************
 */
interface CommonsProps {
    paperFormVariant?: PaperFormProps['variant'];
}
export type HeaderProps = Omit<PaperFormProps, 'children' | 'isForm'> & CommonsProps;
export type PaperFormOwnerState = Pick<PaperFormProps, 'isForm' | 'color' | 'size' | 'height'> & CommonsProps;
/**
 * ***********************************
 * Slots para los estilos utilizados
 * en el componente PaperForm
 * **********************************
 */
export type PaperFormSlotsType = keyof typeof PaperFormSlots;
export type PaperFormStyles = M4LOverridesStyleRules<PaperFormSlotsType, typeof PAPER_FORM_KEY, Theme>;
export {};
//# sourceMappingURL=types.d.ts.map