export type HiddenFieldSchema = {
    type: 'hidden';
};
export type NumberFieldSchema = {
    type: 'number';
    min?: number;
    max?: number;
    step?: number;
    default: number | undefined;
    description?: string;
};
export type BooleanFieldSchema = {
    type: 'boolean';
    default: boolean;
    description?: string;
};
export type RotationFieldSchema = {
    type: 'rotation';
    step?: number;
    default: string | undefined;
    description?: string;
};
export type TranslateFieldSchema = {
    type: 'translate';
    step?: number;
    default: string | undefined;
    description?: string;
};
export type ColorFieldSchema = {
    type: 'color';
    default: string | undefined;
    description?: string;
};
export type EnumFieldSchema = {
    type: 'enum';
    default: string;
    description?: string;
    variants: Record<string, SequenceSchema>;
};
export type VisibleFieldSchema = NumberFieldSchema | BooleanFieldSchema | RotationFieldSchema | TranslateFieldSchema | ColorFieldSchema | EnumFieldSchema;
export type SequenceFieldSchema = VisibleFieldSchema | HiddenFieldSchema;
export type SequenceSchema = {
    [key: string]: SequenceFieldSchema;
};
export type SchemaKeysRecord<S extends SequenceSchema> = Record<keyof S, unknown>;
export declare const sequenceVisualStyleSchema: {
    readonly 'style.translate': {
        readonly type: "translate";
        readonly step: 1;
        readonly default: "0px 0px";
        readonly description: "Offset";
    };
    readonly 'style.scale': {
        readonly type: "number";
        readonly min: 0.05;
        readonly max: 100;
        readonly step: 0.01;
        readonly default: 1;
        readonly description: "Scale";
    };
    readonly 'style.rotate': {
        readonly type: "rotation";
        readonly step: 1;
        readonly default: "0deg";
        readonly description: "Rotation";
    };
    readonly 'style.opacity': {
        readonly type: "number";
        readonly min: 0;
        readonly max: 1;
        readonly step: 0.01;
        readonly default: 1;
        readonly description: "Opacity";
    };
};
export declare const sequencePremountSchema: {
    readonly premountFor: {
        readonly type: "number";
        readonly default: 0;
        readonly description: "Premount For";
        readonly min: 0;
        readonly step: 1;
    };
    readonly postmountFor: {
        readonly type: "hidden";
    };
    readonly styleWhilePremounted: {
        readonly type: "hidden";
    };
    readonly styleWhilePostmounted: {
        readonly type: "hidden";
    };
};
export declare const sequenceStyleSchema: {
    readonly premountFor: {
        readonly type: "number";
        readonly default: 0;
        readonly description: "Premount For";
        readonly min: 0;
        readonly step: 1;
    };
    readonly postmountFor: {
        readonly type: "hidden";
    };
    readonly styleWhilePremounted: {
        readonly type: "hidden";
    };
    readonly styleWhilePostmounted: {
        readonly type: "hidden";
    };
    readonly 'style.translate': {
        readonly type: "translate";
        readonly step: 1;
        readonly default: "0px 0px";
        readonly description: "Offset";
    };
    readonly 'style.scale': {
        readonly type: "number";
        readonly min: 0.05;
        readonly max: 100;
        readonly step: 0.01;
        readonly default: 1;
        readonly description: "Scale";
    };
    readonly 'style.rotate': {
        readonly type: "rotation";
        readonly step: 1;
        readonly default: "0deg";
        readonly description: "Rotation";
    };
    readonly 'style.opacity': {
        readonly type: "number";
        readonly min: 0;
        readonly max: 1;
        readonly step: 0.01;
        readonly default: 1;
        readonly description: "Opacity";
    };
};
export declare const hiddenField: SequenceFieldSchema;
export declare const sequenceSchema: {
    readonly hidden: BooleanFieldSchema;
    readonly layout: {
        readonly type: "enum";
        readonly default: "absolute-fill";
        readonly description: "Layout";
        readonly variants: {
            readonly 'absolute-fill': {
                readonly premountFor: {
                    readonly type: "number";
                    readonly default: 0;
                    readonly description: "Premount For";
                    readonly min: 0;
                    readonly step: 1;
                };
                readonly postmountFor: {
                    readonly type: "hidden";
                };
                readonly styleWhilePremounted: {
                    readonly type: "hidden";
                };
                readonly styleWhilePostmounted: {
                    readonly type: "hidden";
                };
                readonly 'style.translate': {
                    readonly type: "translate";
                    readonly step: 1;
                    readonly default: "0px 0px";
                    readonly description: "Offset";
                };
                readonly 'style.scale': {
                    readonly type: "number";
                    readonly min: 0.05;
                    readonly max: 100;
                    readonly step: 0.01;
                    readonly default: 1;
                    readonly description: "Scale";
                };
                readonly 'style.rotate': {
                    readonly type: "rotation";
                    readonly step: 1;
                    readonly default: "0deg";
                    readonly description: "Rotation";
                };
                readonly 'style.opacity': {
                    readonly type: "number";
                    readonly min: 0;
                    readonly max: 1;
                    readonly step: 0.01;
                    readonly default: 1;
                    readonly description: "Opacity";
                };
            };
            readonly none: {};
        };
    };
};
export declare const sequenceSchemaDefaultLayoutNone: SequenceSchema;
