import { z as zod } from 'zod';
import { SettingCLIGenTemplate, SettingCustomGen } from '../../types';
import { SettingsMarker } from '../types';
import { CheckError } from './types';
export declare const getSchemaMarkers: (rootPath: CheckError["rootPath"], path?: zod.CustomErrorParams["path"]) => zod.ZodType<SettingsMarker[]>;
export declare const commonSchemaOfOptionalSettings: {
    rootPath: zod.ZodOptional<zod.ZodEffects<zod.ZodString, string, string>>;
};
export declare const schemaOutputPath: {
    outputPath: zod.ZodUnion<[zod.ZodString, zod.ZodArray<zod.ZodString, "many">]>;
};
export declare const getCommonSchema: (rootPath: CheckError["rootPath"]) => {
    markers: zod.ZodOptional<zod.ZodType<SettingsMarker[], zod.ZodTypeDef, SettingsMarker[]>>;
    onComplete: zod.ZodOptional<zod.ZodFunction<zod.ZodTuple<[zod.ZodUnknown], zod.ZodUnknown>, zod.ZodVoid>>;
    outputPath: zod.ZodUnion<[zod.ZodString, zod.ZodArray<zod.ZodString, "many">]>;
    pathToTemplate: zod.ZodUnion<[zod.ZodString, zod.ZodArray<zod.ZodString, "many">]>;
};
export declare const validateMarkerPatterns: ({ settings, pathCtx, ctx, rootPath, }: {
    settings: Pick<SettingCustomGen, "markers" | "outputPath">[] | Pick<SettingCLIGenTemplate, "markers" | "outputPath" | "selectDirectory">[];
    pathCtx?: (string | number)[];
    ctx: zod.RefinementCtx;
    rootPath: CheckError["rootPath"];
}) => void;
