import { BaseAPIRequestFactory } from "../../datadog-api-client-common/baseapi";
import { Configuration } from "../../datadog-api-client-common/configuration";
import { RequestContext, ResponseContext } from "../../datadog-api-client-common/http/http";
import { RuleBasedViewResponse } from "../models/RuleBasedViewResponse";
export declare class ComplianceApiRequestFactory extends BaseAPIRequestFactory {
    getRuleBasedView(to: number, framework?: string, version?: string, queryFindingsWithoutFrameworkVersion?: boolean, includeRulesWithoutFindings?: boolean, isCustom?: boolean, query?: string, _options?: Configuration): Promise<RequestContext>;
}
export declare class ComplianceApiResponseProcessor {
    /**
     * Unwraps the actual response sent by the server from the response context and deserializes the response content
     * to the expected objects
     *
     * @params response Response returned by the server for a request to getRuleBasedView
     * @throws ApiException if the response code was not in [200, 299]
     */
    getRuleBasedView(response: ResponseContext): Promise<RuleBasedViewResponse>;
}
export interface ComplianceApiGetRuleBasedViewRequest {
    /**
     * Timestamp of the query end, in milliseconds since the Unix epoch.
     * @type number
     */
    to: number;
    /**
     * Compliance framework handle to filter rules and findings by.
     * @type string
     */
    framework?: string;
    /**
     * Version of the compliance framework to filter rules and findings by.
     * @type string
     */
    version?: string;
    /**
     * When `true`, returns findings without a `framework_version` tag. Used for findings from custom frameworks or those created before framework versioning was introduced.
     * @type boolean
     */
    queryFindingsWithoutFrameworkVersion?: boolean;
    /**
     * When `true`, includes rules in the response that have no associated findings.
     * @type boolean
     */
    includeRulesWithoutFindings?: boolean;
    /**
     * Set to `true` when the requested `framework` is a custom framework.
     * @type boolean
     */
    isCustom?: boolean;
    /**
     * Additional event-platform filters applied to the underlying findings query. For example, `scored:true project_id:datadog-prod-us5`.
     * @type string
     */
    query?: string;
}
export declare class ComplianceApi {
    private requestFactory;
    private responseProcessor;
    private configuration;
    constructor(configuration: Configuration, requestFactory?: ComplianceApiRequestFactory, responseProcessor?: ComplianceApiResponseProcessor);
    /**
     * **This endpoint is deprecated.** Use the [Security Monitoring - Search Security Findings](https://docs.datadoghq.com/api/latest/security-monitoring/search-security-findings/) endpoint instead.
     *
     * Get an aggregated view of compliance rules with their pass, fail, and muted finding counts.
     * Supports filtering by compliance framework, framework version, and additional query filters.
     * @param param The request object
     */
    getRuleBasedView(param: ComplianceApiGetRuleBasedViewRequest, options?: Configuration): Promise<RuleBasedViewResponse>;
}
