import { ReactNode } from 'react';
import { Theme } from '@mui/material';
import { M4LOverridesStyleRules } from '../../../@types/augmentations';
import { SplitLayoutSlots as slots } from './slots/SplitLayoutEnum';
import { SPLIT_LAYOUT_KEY_COMPONENT } from './constants';
export type SplitPosition = 'vertical' | 'horizontal' | 'none';
/** Es una interfaz que define las propiedades aceptadas por el componente SplitLayout.  */
export interface SplitLayoutProps {
    /** determina la orientación de la división entre las dos partes de la interfaz de usuario. Puede tener tres valores: "vertical", "horizontal" o "none". */
    splitPosition: SplitPosition;
    /**La propiedad percentage en la interfaz SplitLayoutProps indica si el tamaño inicial de la segunda parte del diseño dividido se proporciona en porcentaje en lugar de píxeles.*/
    percentage?: boolean;
    /** permite establecer un tamaño inicial específico para la segunda parte del diseño dividido.*/
    secondParrtInitialSize?: number;
    /**representa el contenido o componente que se mostrará en la primera parte de la interfaz de usuario. */
    firstPart?: ((props?: any) => JSX.Element) | ReactNode;
    /** representa el contenido o componente que se mostrará en la segunda parte de la interfaz de usuario,la parte sea de abajo o a la derecha*/
    secondPart?: ((props?: any) => JSX.Element) | ReactNode;
    /** se utiliza para permitir que el componente SplitLayout reciba clases CSS personalizadas desde el componente padre, lo que permite una mayor flexibilidad en la estilización de este componente.*/
    className?: string;
    /**
     * se utiliza el `dataTestId` para las pruebas unitarias
     */
    dataTestId?: string;
}
export type SplitLayoutStyles = M4LOverridesStyleRules<keyof typeof slots, typeof SPLIT_LAYOUT_KEY_COMPONENT, Theme>;
//# sourceMappingURL=types.d.ts.map