import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This data source provides the list of Security Assessment Findings in Oracle Cloud Infrastructure Data Safe service.
 *
 * Lists all the findings for the specified assessment except for type TEMPLATE. If the assessment is of type TEMPLATE_BASELINE, the findings returned are the security checks with the user-defined severity from the template.
 */
export declare function getSecurityAssessmentFindings(args: GetSecurityAssessmentFindingsArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityAssessmentFindingsResult>;
/**
 * A collection of arguments for invoking getSecurityAssessmentFindings.
 */
export interface GetSecurityAssessmentFindingsArgs {
    /**
     * Valid values are RESTRICTED and ACCESSIBLE. Default is RESTRICTED. Setting this to ACCESSIBLE returns only those compartments for which the user has INSPECT permissions directly or indirectly (permissions can be on a resource in a subcompartment). When set to RESTRICTED permissions are checked and no partial results are displayed.
     */
    accessLevel?: string;
    /**
     * The category of the finding.
     */
    category?: string;
    /**
     * A filter to return only resources that match the specified compartment OCID.
     */
    compartmentId?: string;
    /**
     * Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned. Depends on the 'accessLevel' setting.
     */
    compartmentIdInSubtree?: boolean;
    /**
     * An optional filter to return only findings that match the specified references. Use containsReferences param if need to filter by multiple references.
     */
    containsReferences?: string[];
    /**
     * A filter to return only findings that match the specified risk level(s). Use containsSeverity parameter if need to filter by multiple risk levels.
     */
    containsSeverities?: string[];
    /**
     * Specifies a subset of fields to be returned in the response.
     */
    fields?: string[];
    filters?: inputs.DataSafe.GetSecurityAssessmentFindingsFilter[];
    /**
     * Each finding in security assessment has an associated key (think of key as a finding's name). For a given finding, the key will be the same across targets. The user can use these keys to filter the findings.
     */
    findingKey?: string;
    /**
     * A filter to return only the findings that are marked as top findings.
     */
    isTopFinding?: boolean;
    /**
     * An optional filter to return only findings that match the specified reference.
     */
    references?: string;
    /**
     * The scimQuery query parameter accepts filter expressions that use the syntax described in Section 3.2.2.2 of the System for Cross-Domain Identity Management (SCIM) specification, which is available at [RFC3339](https://tools.ietf.org/html/draft-ietf-scim-api-12). In SCIM filtering expressions, text, date, and time values must be enclosed in quotation marks, with date and time values using ISO-8601 format. (Numeric and boolean values should not be quoted.)
     *
     * **Example:** | scimQuery=(severity eq 'high') and (targetId eq 'target_1') scimQuery=(category eq "Users") and (targetId eq "target1") scimQuery=(reference eq 'CIS') and (targetId eq 'target_1')
     *
     * Supported fields: severity findingKey reference targetId isTopFinding title category remarks details summary isRiskModified
     */
    scimQuery?: string;
    /**
     * The OCID of the security assessment.
     */
    securityAssessmentId: string;
    /**
     * A filter to return only findings of a particular risk level.
     */
    severity?: string;
    /**
     * A filter to return only the findings that match the specified lifecycle states.
     */
    state?: string;
    /**
     * A filter to return only items related to a specific target OCID.
     */
    targetId?: string;
    /**
     * An optional filter to return only findings that match the specified target ids. Use this parameter to filter by multiple target ids.
     */
    targetIds?: string[];
}
/**
 * A collection of values returned by getSecurityAssessmentFindings.
 */
export interface GetSecurityAssessmentFindingsResult {
    readonly accessLevel?: string;
    /**
     * The category to which the finding belongs to.
     */
    readonly category?: string;
    readonly compartmentId?: string;
    readonly compartmentIdInSubtree?: boolean;
    readonly containsReferences?: string[];
    readonly containsSeverities?: string[];
    readonly fields?: string[];
    readonly filters?: outputs.DataSafe.GetSecurityAssessmentFindingsFilter[];
    readonly findingKey?: string;
    /**
     * The list of findings.
     */
    readonly findings: outputs.DataSafe.GetSecurityAssessmentFindingsFinding[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Indicates whether a given finding is marked as topFinding or not.
     */
    readonly isTopFinding?: boolean;
    /**
     * Provides information on whether the finding is related to a CIS Oracle Database Benchmark recommendation, a STIG rule, or a GDPR Article/Recital.
     */
    readonly references?: string;
    readonly scimQuery?: string;
    readonly securityAssessmentId: string;
    /**
     * The severity of the finding as determined by security assessment and is same as oracleDefinedSeverity, unless modified by user.
     */
    readonly severity?: string;
    /**
     * The current state of the finding.
     */
    readonly state?: string;
    /**
     * The OCID of the target database.
     */
    readonly targetId?: string;
    readonly targetIds?: string[];
}
/**
 * This data source provides the list of Security Assessment Findings in Oracle Cloud Infrastructure Data Safe service.
 *
 * Lists all the findings for the specified assessment except for type TEMPLATE. If the assessment is of type TEMPLATE_BASELINE, the findings returned are the security checks with the user-defined severity from the template.
 */
export declare function getSecurityAssessmentFindingsOutput(args: GetSecurityAssessmentFindingsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSecurityAssessmentFindingsResult>;
/**
 * A collection of arguments for invoking getSecurityAssessmentFindings.
 */
export interface GetSecurityAssessmentFindingsOutputArgs {
    /**
     * Valid values are RESTRICTED and ACCESSIBLE. Default is RESTRICTED. Setting this to ACCESSIBLE returns only those compartments for which the user has INSPECT permissions directly or indirectly (permissions can be on a resource in a subcompartment). When set to RESTRICTED permissions are checked and no partial results are displayed.
     */
    accessLevel?: pulumi.Input<string | undefined>;
    /**
     * The category of the finding.
     */
    category?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources that match the specified compartment OCID.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned. Depends on the 'accessLevel' setting.
     */
    compartmentIdInSubtree?: pulumi.Input<boolean | undefined>;
    /**
     * An optional filter to return only findings that match the specified references. Use containsReferences param if need to filter by multiple references.
     */
    containsReferences?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * A filter to return only findings that match the specified risk level(s). Use containsSeverity parameter if need to filter by multiple risk levels.
     */
    containsSeverities?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Specifies a subset of fields to be returned in the response.
     */
    fields?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.DataSafe.GetSecurityAssessmentFindingsFilterArgs>[] | undefined>;
    /**
     * Each finding in security assessment has an associated key (think of key as a finding's name). For a given finding, the key will be the same across targets. The user can use these keys to filter the findings.
     */
    findingKey?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only the findings that are marked as top findings.
     */
    isTopFinding?: pulumi.Input<boolean | undefined>;
    /**
     * An optional filter to return only findings that match the specified reference.
     */
    references?: pulumi.Input<string | undefined>;
    /**
     * The scimQuery query parameter accepts filter expressions that use the syntax described in Section 3.2.2.2 of the System for Cross-Domain Identity Management (SCIM) specification, which is available at [RFC3339](https://tools.ietf.org/html/draft-ietf-scim-api-12). In SCIM filtering expressions, text, date, and time values must be enclosed in quotation marks, with date and time values using ISO-8601 format. (Numeric and boolean values should not be quoted.)
     *
     * **Example:** | scimQuery=(severity eq 'high') and (targetId eq 'target_1') scimQuery=(category eq "Users") and (targetId eq "target1") scimQuery=(reference eq 'CIS') and (targetId eq 'target_1')
     *
     * Supported fields: severity findingKey reference targetId isTopFinding title category remarks details summary isRiskModified
     */
    scimQuery?: pulumi.Input<string | undefined>;
    /**
     * The OCID of the security assessment.
     */
    securityAssessmentId: pulumi.Input<string>;
    /**
     * A filter to return only findings of a particular risk level.
     */
    severity?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only the findings that match the specified lifecycle states.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only items related to a specific target OCID.
     */
    targetId?: pulumi.Input<string | undefined>;
    /**
     * An optional filter to return only findings that match the specified target ids. Use this parameter to filter by multiple target ids.
     */
    targetIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
}
//# sourceMappingURL=getSecurityAssessmentFindings.d.ts.map