import { APIResource } from "../../../core/resource.js";
import { PagePromise, SinglePage } from "../../../core/pagination.js";
import { RequestOptions } from "../../../internal/request-options.js";
export declare class BaseContentFindings extends APIResource {
    static readonly _key: readonly ['analyticsQuery', 'dataSecurity', 'contentFindings'];
    /**
     * Returns the top N integrations ranked by total content findings.
     *
     * @example
     * ```ts
     * // Automatically fetches more pages as needed.
     * for await (const contentFindingTopNResponse of client.analyticsQuery.dataSecurity.contentFindings.topN(
     *   {
     *     account_id: '023e105f4ecef8ad9ca31a8372d0c353',
     *     filters: [],
     *     from: '2024-11-01T00:00:00Z',
     *     n: 10,
     *     to: '2024-11-08T00:00:00Z',
     *   },
     * )) {
     *   // ...
     * }
     * ```
     */
    topN(params: ContentFindingTopNParams, options?: RequestOptions): PagePromise<ContentFindingTopNResponsesSinglePage, ContentFindingTopNResponse>;
}
export declare class ContentFindings extends BaseContentFindings {
}
export type ContentFindingTopNResponsesSinglePage = SinglePage<ContentFindingTopNResponse>;
/**
 * Maps field names to values. Keys represent stat names and group-by column names.
 * Values depend on the dataset (strings, numbers, booleans).
 */
export type ContentFindingTopNResponse = {
    [key: string]: unknown;
};
export interface ContentFindingTopNParams {
    /**
     * Path param: Cloudflare account identifier.
     */
    account_id: string;
    /**
     * Body param: Filters to apply. `findingType = content` is applied automatically
     * for CASB data.
     */
    filters: Array<ContentFindingTopNParams.Filter>;
    /**
     * Body param: Start of the query time range (inclusive). RFC3339.
     */
    from: string;
    /**
     * Body param: Maximum number of integrations to return.
     */
    n: number;
    /**
     * Body param: End of the query time range (exclusive). RFC3339.
     */
    to: string;
}
export declare namespace ContentFindingTopNParams {
    /**
     * A filter to apply to the query.
     */
    interface Filter {
        /**
         * Specifies the column name to filter on. Requires a valid column for the target
         * dataset (e.g. `country`, `allowed`, `appId`).
         */
        name: string;
        /**
         * Filter operator. Common values: `eq`, `neq`, `in`, `not_in`, `gt`, `lt`, `gte`,
         * `lte`.
         */
        op: string;
        /**
         * Values to match against. Type depends on the column.
         */
        values: Array<string | boolean | number>;
    }
}
export declare namespace ContentFindings {
    export { type ContentFindingTopNResponse as ContentFindingTopNResponse, type ContentFindingTopNResponsesSinglePage as ContentFindingTopNResponsesSinglePage, type ContentFindingTopNParams as ContentFindingTopNParams, };
}
//# sourceMappingURL=content-findings.d.ts.map