import { type PropsWithChildren, type ReactNode } from 'react'; import { type Metadata, type ResolvingMetadata } from 'next'; import type { ChannelDefinition, ClientFactory } from '@remkoj/optimizely-graph-client'; import type { DefaultCmsPageProps } from './page.js'; import { type GetMetaDataByPathMethod } from './data.js'; export type CmsPageLayout = { generateMetadata: (props: Omit, resolving: ResolvingMetadata) => Promise; PageLayout: (props: PropsWithChildren>) => JSX.Element | ReactNode; }; export type CreateLayoutOptions = { defaultLocale: string | null; getMetaDataByPath?: GetMetaDataByPathMethod; client: ClientFactory; channel?: ChannelDefinition; }; export declare function createLayout(options?: Partial): CmsPageLayout; export default createLayout;