import type { Mapping } from '../../../mapping/base'; import { Validator, type ValidityObject } from '../../../utilities/models/validator'; export interface RichTextMentionValidity extends ValidityObject { } type FlagNames = T extends readonly (infer U)[] ? U : never; export declare const baseValidityFlagNames: readonly ["duplicateMappingMentionHref", "missingMentionHrefValue", "mentionHrefNotValidUrl", "mentionHrefDoesNotMatchPattern", "missingPatternAttribute", "unsupportedPatternValue"]; /** * Validator for RichTextMention */ export declare class RichTextMentionValidator extends Validator { constructor(configValidityKeys: ValidityFlagNames); validate(mappings: Mapping[], pattern: string | undefined): void; /** * @returns an object containing flags for various ways the configuation can be invalid */ getValidity(): RichTextMentionValidity; /** * Sets a particular validity condition flag's value, e.g. "hasInvalidFooValue" = true */ protected setConditionValue(name: FlagNames, isInvalid: boolean): void; private validateMissingPattern; private validatePattern; private validateUniqueMentionHref; private validateNoMissingMentionHref; private validateHrefForUrl; private validateHrefForPattern; private isInvalidUrl; private isInvalidRegex; } export {};