import type { Infer } from "@metamask/superstruct";
/**
 * Pagination struct. This struct is used to specify the limit of items to
 * return and the next cursor to iterate over the results.
 *
 * @example
 * ```ts
 * {
 *   limit: 10,
 *   next: 'c3y1Q6QtqtstbxKX+oqVdEW6',
 * }
 * ```
 */
export declare const PaginationStruct: import("@metamask/superstruct").Struct<{
    limit: number;
    next?: string | null;
}, {
    /**
     * Maximum number of items to return.
     */
    limit: import("@metamask/superstruct").Struct<number, null>;
    /**
     * Next cursor to iterate over the results.
     */
    next: import("@metamask/superstruct").Struct<string | import("@metamask/keyring-utils").ExactOptionalTag | null, null>;
}>;
/**
 * Pagination object.
 *
 * See {@link PaginationStruct}.
 */
export type Pagination = Infer<typeof PaginationStruct>;
/**
 * Page of results. It includes the data and the next cursor to iterate over
 * the results.
 *
 * @example
 * ```ts
 * {
 *   data: [
 *     {
 *       // Item object
 *     }
 *   ],
 *   next: 'c3y1Q6QtqtstbxKX+oqVdEW6',
 * }
 * ```
 */
export type Paginated<Type> = {
    /**
     * The list of items for this page.
     */
    data: Type[];
    /**
     * Next cursor to iterate over the results if any, will be `null` otherwise.
     */
    next: string | null;
};
//# sourceMappingURL=pagination.d.cts.map