MetaFor - v0.3.1
    Preparing search index...

    Type Alias ContextTypes

    Фабрики типов для создания схем контекста

    types.string.required('Гость')
    types.number.optional()
    types.boolean.required()
    types.array().optional()
    types.enum('user', 'admin').required('user')
    type ContextTypes = {
        string: {
            required: <T extends string = string>(
                defaultValue?: T,
            ) => (options?: { title?: string }) => RequiredStringDefinition & RequiredStringDefinition;
            optional: <T extends string = string>(
                defaultValue?: T,
            ) => (options?: { title?: string }) => OptionalStringDefinition & OptionalStringDefinition;
            <T extends string = string>(
                defaultValue?: T,
            ): (options?: { title?: string }) => OptionalStringDefinition & OptionalStringDefinition;
        };
        number: {
            required: <T extends number = number>(
                defaultValue?: T,
            ) => (options?: { title?: string }) => RequiredNumberDefinition & RequiredNumberDefinition;
            optional: <T extends number = number>(
                defaultValue?: T,
            ) => (options?: { title?: string }) => OptionalNumberDefinition & OptionalNumberDefinition;
            <T extends number = number>(
                defaultValue?: T,
            ): (options?: { title?: string }) => OptionalNumberDefinition & OptionalNumberDefinition;
        };
        boolean: {
            required: <T extends boolean = boolean>(
                defaultValue?: T,
            ) => (options?: { title?: string }) => RequiredBooleanDefinition & RequiredBooleanDefinition;
            optional: <T extends boolean = boolean>(
                defaultValue?: T,
            ) => (options?: { title?: string }) => OptionalBooleanDefinition & OptionalBooleanDefinition;
            <T extends boolean = boolean>(
                defaultValue?: T,
            ): (options?: { title?: string }) => OptionalBooleanDefinition & OptionalBooleanDefinition;
        };
        array: {
            required: <T extends string | number | boolean = string>(
                defaultValue?: T[],
            ) => (options?: { title?: string }) => RequiredArrayDefinition<T> & RequiredArrayDefinition<
                T,
            >;
            optional: <T extends string | number | boolean = string>(
                defaultValue?: T[],
            ) => (options?: { title?: string }) => OptionalArrayDefinition<T> & OptionalArrayDefinition<
                T,
            >;
            <T extends string | number | boolean = string>(
                defaultValue?: T[],
            ): (options?: { title?: string }) => OptionalArrayDefinition<T> & OptionalArrayDefinition<
                T,
            >;
        };
        enum: <const T extends readonly (string | number)[]>(
            ...values: T,
        ) => {
            required: (
                defaultValue?: T[number],
            ) => (options?: { title?: string }) => RequiredEnumDefinition<T> & RequiredEnumDefinition<
                T,
            >;
            optional: (
                defaultValue?: T[number],
            ) => (options?: { title?: string }) => OptionalEnumDefinition<T> & OptionalEnumDefinition<
                T,
            >;
            (
                defaultValue?: T[number],
            ): (options?: { title?: string }) => OptionalEnumDefinition<T> & OptionalEnumDefinition<
                T,
            >;
        };
    }
    Index

    Properties

    string: {
        required: <T extends string = string>(
            defaultValue?: T,
        ) => (options?: { title?: string }) => RequiredStringDefinition & RequiredStringDefinition;
        optional: <T extends string = string>(
            defaultValue?: T,
        ) => (options?: { title?: string }) => OptionalStringDefinition & OptionalStringDefinition;
        <T extends string = string>(
            defaultValue?: T,
        ): (options?: { title?: string }) => OptionalStringDefinition & OptionalStringDefinition;
    }
    number: {
        required: <T extends number = number>(
            defaultValue?: T,
        ) => (options?: { title?: string }) => RequiredNumberDefinition & RequiredNumberDefinition;
        optional: <T extends number = number>(
            defaultValue?: T,
        ) => (options?: { title?: string }) => OptionalNumberDefinition & OptionalNumberDefinition;
        <T extends number = number>(
            defaultValue?: T,
        ): (options?: { title?: string }) => OptionalNumberDefinition & OptionalNumberDefinition;
    }
    boolean: {
        required: <T extends boolean = boolean>(
            defaultValue?: T,
        ) => (options?: { title?: string }) => RequiredBooleanDefinition & RequiredBooleanDefinition;
        optional: <T extends boolean = boolean>(
            defaultValue?: T,
        ) => (options?: { title?: string }) => OptionalBooleanDefinition & OptionalBooleanDefinition;
        <T extends boolean = boolean>(
            defaultValue?: T,
        ): (options?: { title?: string }) => OptionalBooleanDefinition & OptionalBooleanDefinition;
    }
    array: {
        required: <T extends string | number | boolean = string>(
            defaultValue?: T[],
        ) => (options?: { title?: string }) => RequiredArrayDefinition<T> & RequiredArrayDefinition<
            T,
        >;
        optional: <T extends string | number | boolean = string>(
            defaultValue?: T[],
        ) => (options?: { title?: string }) => OptionalArrayDefinition<T> & OptionalArrayDefinition<
            T,
        >;
        <T extends string | number | boolean = string>(
            defaultValue?: T[],
        ): (options?: { title?: string }) => OptionalArrayDefinition<T> & OptionalArrayDefinition<
            T,
        >;
    }
    enum: <const T extends readonly (string | number)[]>(
        ...values: T,
    ) => {
        required: (
            defaultValue?: T[number],
        ) => (options?: { title?: string }) => RequiredEnumDefinition<T> & RequiredEnumDefinition<
            T,
        >;
        optional: (
            defaultValue?: T[number],
        ) => (options?: { title?: string }) => OptionalEnumDefinition<T> & OptionalEnumDefinition<
            T,
        >;
        (
            defaultValue?: T[number],
        ): (options?: { title?: string }) => OptionalEnumDefinition<T> & OptionalEnumDefinition<
            T,
        >;
    }