import type { SchemaProperty } from '../../common/schema-property.ts';
import type { Nxtpression, WidgetLayout } from '../../index.ts';
export interface TemplateDomainRecords {
    ":template": TemplateRecord;
}
export interface TemplateRecord {
    source?: string;
    controller?: string;
    type?: string;
    mixin?: string[];
    properties?: Record<string, TemplateProperty>;
    layout: TemplateLayout;
}
export interface TemplateLayout {
    title?: string;
    poster?: Nxtpression<string>;
    header?: WidgetLayout;
    panel?: WidgetLayout;
    form?: WidgetLayout;
}
export interface TemplateProperty extends SchemaProperty {
    path?: string;
    render?: {
        type: "image";
        profile?: {
            format?: string;
            video?: {
                width: number;
                height: number;
                fit: "cover";
            };
        };
    };
}
