Interface providing overloaded signatures for mlString schema methods. Enables proper type inference based on the array option.

interface MlStringVariants {
    buildMultiLanguageQuery(
        fieldName: string,
        searchTerm: string,
        operator?: string,
    ): string;
    buildQuery(
        fieldName: string,
        lang: string,
        value: string,
        operator?: string,
    ): string;
    getHTMLSchema(options?: MlStringHTMLSchemaOptions): ObjectType<string>;
    getRichTextSchema(): ObjectType<MultilingualRichText>;
    getSafeTextSchema(
        options: MlStringPlainTextSchemaOptions & { array: true },
    ): ObjectType<string[]>;
    getSafeTextSchema(
        options?: MlStringPlainTextSchemaOptions,
    ): ObjectType<string>;
    getSchema(
        options: MlStringSchemaOptions & { array: true },
    ): ObjectType<string[]>;
    getSchema(
        options?: MlStringSchemaOptions & { array?: false },
    ): ObjectType<string>;
    getSchema(options?: MlStringSchemaOptions): ObjectType<string>;
    getValidLanguageKeys(): string[];
    isValidLanguageKey(langKey: string): boolean;
    resolve(lang: string, strObj: Record<string, string>): ResolveResult;
    stripHTML<T extends MultilingualInput>(strObj: T): T;
    stripHTMLFromArray<T extends MultilingualInput>(strObjArr: T[]): T[];
    stripHTMLFromArrayValues(
        strObj: MultilingualStringArray,
    ): MultilingualStringArray;
    validate(value: unknown, options?: MlStringSchemaOptions): boolean;
}

Methods

  • Parameters

    • fieldName: string
    • searchTerm: string
    • Optionaloperator: string

    Returns string

  • Parameters

    • fieldName: string
    • lang: string
    • value: string
    • Optionaloperator: string

    Returns string

  • Parameters

    • langKey: string

    Returns boolean

  • Parameters

    • strObj: MultilingualStringArray

    Returns MultilingualStringArray