import { ISanitizeOptions, ISchema, ISchemaInstance, ISchemaOptions } from './schema';
export declare type StringInstance = ISchemaInstance<string>;
export interface IStringOptions extends ISchemaOptions<StringInstance> {
    default?: string | (() => string);
    enum?: string[];
    min?: number;
    max?: number;
    regex?: RegExp;
}
export declare class StringSchema implements ISchema<string, StringInstance, string> {
    readonly options: IStringOptions;
    constructor(options?: IStringOptions);
    create(value: any, sanitizeOptions?: ISanitizeOptions): StringInstance;
    toObject(instance: StringInstance): string;
    validate(instance: StringInstance): Promise<void>;
    protected sanitize(value: any, sanitizeOptions: ISanitizeOptions): string;
}
