import { type Blueprint, type Schemas } from '@boost/common/optimal';
import type { ExtendsSetting, FileGlob, PluginsSetting } from './types';
/**
 * Create an `optimal` schema for validating the structure of an "extends" setting.
 */
export declare function createExtendsSchema(schematics?: Schemas): import("@boost/common/optimal").UnionSchema<ExtendsSetting>;
/**
 * Create an `optimal` schema for validating the structure of a "plugins" setting.
 */
export declare function createPluginsSchema(schematics?: Schemas): import("@boost/common/optimal").UnionSchema<PluginsSetting>;
/**
 * Create an `optimal` schema for validating the structure of an "overrides" setting.
 */
export declare function createOverridesSchema<T extends object>(blueprint: Blueprint<T>, schematics?: Schemas): import("@boost/common/optimal").ArraySchema<Required<{
    exclude: FileGlob;
    include: FileGlob;
    settings: Required<import("optimal/dts/types").NotNull<T>>;
}>[]>;
//# sourceMappingURL=schemas.d.ts.map