import { type PageLayoutProps } from '@astral/components'; import { type ElementType, type ReactNode } from 'react'; import { type UseFormReturn } from '../../hooks'; import type { SecondaryAction } from '../types'; type FormPageProps> = { form: UseFormReturn | null; /** * Если true, форма будет недоступна для взаимодействия */ isDisabled?: boolean; /** * Дополнительные кнопки формы */ secondaryActions?: SecondaryAction[]; }; export type FormPageLayoutBaseProps, TMainActionComponent extends ElementType = ElementType, TSecondaryActionComponent extends ElementType = ElementType, TBackButtonComponent extends ElementType = ElementType> = Omit, 'content'> & { /** * Содержимое layout */ children: (props: { isDisabled?: boolean; }) => ReactNode; /** * Параметры страницы формы */ formProps: FormPageProps; /** * Класс применяемый к PageContent */ contentClassname?: string; }; /** * Компонент не предназначен для экспорта из пакета. Используется внутри FormPageLayout и FormWizardPageLayout */ export declare const FormPageLayoutBase: >(props: FormPageLayoutBaseProps) => JSX.Element; export {};