import type { PrismicDocument } from "../value/document";
/**
 * A query response from the Prismic REST API V2. The response contains
 * paginated metadata and a list of matching results for the query.
 *
 * @typeParam Document - The type(s) of Prismic document that can be returned.
 *
 * @see More details on querying: {@link https://prismic.io/docs/api}
 */
export interface Query<Document extends PrismicDocument = PrismicDocument> {
    /**
     * The page number for this page of results.
     */
    page: number;
    /**
     * Maximum number of results per page.
     */
    results_per_page: number;
    /**
     * Number of results in this page.
     */
    results_size: number;
    /**
     * Total number of results within all pages.
     */
    total_results_size: number;
    /**
     * Total number of pages.
     */
    total_pages: number;
    /**
     * The Prismic REST API V2 URL to the next page, if one exists.
     */
    next_page: string | null;
    /**
     * The Prismic REST API V2 URL to the previous page, if one exists.
     */
    prev_page: string | null;
    /**
     * A paginated list of documents matching the query.
     */
    results: Document[];
}
