import { Static } from '@sinclair/typebox';
import { TraitImplementation } from 'src/types/RuntimeSchema';
import { ValidResultSchema } from '../../types/ValidResultSchema';
declare type ValidationResult = Static<typeof ValidResultSchema>;
declare type ValidationRule = (text: string) => ValidationResult;
export declare function addValidationRule(name: string, rule: ValidationRule): void;
declare const _default: {
    impl: TraitImplementation<import("@sinclair/typebox").ReduceModifiers<import("@sinclair/typebox").StaticModifiers<{
        value: import("@sinclair/typebox").TString;
        rule: import("@sinclair/typebox").TString;
        maxLength: import("@sinclair/typebox").TInteger;
        minLength: import("@sinclair/typebox").TInteger;
    }>>>;
    version: string;
    kind: "Trait";
    metadata: import("@meta-ui/core/lib/metadata").Metadata;
    spec: {
        properties: import("json-schema").JSONSchema7Object;
        state: import("json-schema").JSONSchema7;
        methods: import("@meta-ui/core").MethodSchema[];
    };
    parsedVersion: import("@meta-ui/core/lib/version").Version;
};
export default _default;
