import sanitizeHtml from "sanitize-html";
import type { DynamicUIComponent } from "./DynamicUIComponent";
import type { UIBlueprint } from "./UIBlueprint";
import type { Dictionary } from "./general";
export declare type Sanitiser = typeof sanitizeHtml;
export declare type SanitiserOptions = Parameters[1] & {
extraAllowedTags?: string[];
};
export declare type ValidationMessageUnit = true | false | string;
export declare type ValidationMessageDictionary = true | Dictionary;
export declare type HTMLString = string;
export declare type LeafNode = DynamicUIComponent | HTMLString;
export declare type UINodeType = UIBlueprint | LeafNode;
export declare interface HasValidation {
isValid(): Type;
}
export declare type GetPhraseOptions = {
isMandatory?: boolean;
sanitiseHtml?: boolean | SanitiserOptions;
};
export declare type GetPhraseFunction = (key: string, options?: GetPhraseOptions) => string;
export declare type HasPhrases = {
getPhrase: GetPhraseFunction;
};
export declare type BlueprintContext = HasPhrases & Dictionary;
export declare type BlueprintFactory = (context: Context) => UIBlueprint;
//# sourceMappingURL=Blueprint.d.ts.map