// This file was auto-generated by Fern from our API Definition.

/**
 * The highlighted results of an Article search. In the examples provided my search query is always "my query".
 */
export interface ArticleSearchHighlights {
    /** The ID of the corresponding article. */
    article_id?: string;
    /** An Article title highlighted. */
    highlighted_title?: ArticleSearchHighlights.HighlightedTitle.Item[];
    /** An Article description and body text highlighted. */
    highlighted_summary?: ArticleSearchHighlights.HighlightedSummary.Item[][];
}

export namespace ArticleSearchHighlights {
    export type HighlightedTitle = HighlightedTitle.Item[];

    export namespace HighlightedTitle {
        /**
         * A highlighted article title.
         */
        export interface Item {
            /** The type of text - `highlight` or `plain`. */
            type?: Item.Type;
            /** The text of the title. */
            text?: string;
        }

        export namespace Item {
            /** The type of text - `highlight` or `plain`. */
            export const Type = {
                Highlight: "highlight",
                Plain: "plain",
            } as const;
            export type Type = (typeof Type)[keyof typeof Type];
        }
    }

    export type HighlightedSummary = HighlightedSummary.Item[];

    export namespace HighlightedSummary {
        /**
         * An instance of highlighted summary text.
         */
        export interface Item {
            /** The type of text - `highlight` or `plain`. */
            type?: Item.Type;
            /** The text of the title. */
            text?: string;
        }

        export namespace Item {
            /** The type of text - `highlight` or `plain`. */
            export const Type = {
                Highlight: "highlight",
                Plain: "plain",
            } as const;
            export type Type = (typeof Type)[keyof typeof Type];
        }
    }
}
