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 Policy Deployment Security Policy Entry States in Oracle Cloud Infrastructure Data Safe service.
 *
 * Retrieves a list of all security policy entry states in Data Safe.
 *
 * The ListSecurityPolicyEntryStates operation returns only the security policy entry states for the specified security policy entry.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testSecurityPolicyDeploymentSecurityPolicyEntryStates = oci.datasafe.getSecurityPolicyDeploymentSecurityPolicyEntryStates({
 *     securityPolicyDeploymentId: testSecurityPolicyDeployment.id,
 *     deploymentStatus: securityPolicyDeploymentSecurityPolicyEntryStateDeploymentStatus,
 *     securityPolicyEntryId: testSecurityPolicyEntry.id,
 *     securityPolicyEntryType: securityPolicyDeploymentSecurityPolicyEntryStateSecurityPolicyEntryType,
 *     targetId: testTarget.id,
 * });
 * ```
 */
export declare function getSecurityPolicyDeploymentSecurityPolicyEntryStates(args: GetSecurityPolicyDeploymentSecurityPolicyEntryStatesArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityPolicyDeploymentSecurityPolicyEntryStatesResult>;
/**
 * A collection of arguments for invoking getSecurityPolicyDeploymentSecurityPolicyEntryStates.
 */
export interface GetSecurityPolicyDeploymentSecurityPolicyEntryStatesArgs {
    /**
     * The current state of the security policy deployment.
     */
    deploymentStatus?: string;
    filters?: inputs.DataSafe.GetSecurityPolicyDeploymentSecurityPolicyEntryStatesFilter[];
    /**
     * The OCID of the security policy deployment resource.
     */
    securityPolicyDeploymentId: string;
    /**
     * An optional filter to return only resources that match the specified security policy entry OCID.
     */
    securityPolicyEntryId?: string;
    /**
     * The type of the security policy deployment.
     */
    securityPolicyEntryType?: string;
    /**
     * An optional filter to return only resources that match the specified target id.
     */
    targetId?: string;
}
/**
 * A collection of values returned by getSecurityPolicyDeploymentSecurityPolicyEntryStates.
 */
export interface GetSecurityPolicyDeploymentSecurityPolicyEntryStatesResult {
    /**
     * The current deployment status of the security policy deployment and the security policy entry associated.
     */
    readonly deploymentStatus?: string;
    readonly filters?: outputs.DataSafe.GetSecurityPolicyDeploymentSecurityPolicyEntryStatesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The OCID of the security policy deployment associated.
     */
    readonly securityPolicyDeploymentId: string;
    /**
     * The OCID of the security policy entry type associated.
     */
    readonly securityPolicyEntryId?: string;
    /**
     * The list of security_policy_entry_state_collection.
     */
    readonly securityPolicyEntryStateCollections: outputs.DataSafe.GetSecurityPolicyDeploymentSecurityPolicyEntryStatesSecurityPolicyEntryStateCollection[];
    readonly securityPolicyEntryType?: string;
    /**
     * The OCID of the target on which the security policy is deployed.
     */
    readonly targetId?: string;
}
/**
 * This data source provides the list of Security Policy Deployment Security Policy Entry States in Oracle Cloud Infrastructure Data Safe service.
 *
 * Retrieves a list of all security policy entry states in Data Safe.
 *
 * The ListSecurityPolicyEntryStates operation returns only the security policy entry states for the specified security policy entry.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testSecurityPolicyDeploymentSecurityPolicyEntryStates = oci.datasafe.getSecurityPolicyDeploymentSecurityPolicyEntryStates({
 *     securityPolicyDeploymentId: testSecurityPolicyDeployment.id,
 *     deploymentStatus: securityPolicyDeploymentSecurityPolicyEntryStateDeploymentStatus,
 *     securityPolicyEntryId: testSecurityPolicyEntry.id,
 *     securityPolicyEntryType: securityPolicyDeploymentSecurityPolicyEntryStateSecurityPolicyEntryType,
 *     targetId: testTarget.id,
 * });
 * ```
 */
export declare function getSecurityPolicyDeploymentSecurityPolicyEntryStatesOutput(args: GetSecurityPolicyDeploymentSecurityPolicyEntryStatesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSecurityPolicyDeploymentSecurityPolicyEntryStatesResult>;
/**
 * A collection of arguments for invoking getSecurityPolicyDeploymentSecurityPolicyEntryStates.
 */
export interface GetSecurityPolicyDeploymentSecurityPolicyEntryStatesOutputArgs {
    /**
     * The current state of the security policy deployment.
     */
    deploymentStatus?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.DataSafe.GetSecurityPolicyDeploymentSecurityPolicyEntryStatesFilterArgs>[] | undefined>;
    /**
     * The OCID of the security policy deployment resource.
     */
    securityPolicyDeploymentId: pulumi.Input<string>;
    /**
     * An optional filter to return only resources that match the specified security policy entry OCID.
     */
    securityPolicyEntryId?: pulumi.Input<string | undefined>;
    /**
     * The type of the security policy deployment.
     */
    securityPolicyEntryType?: pulumi.Input<string | undefined>;
    /**
     * An optional filter to return only resources that match the specified target id.
     */
    targetId?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getSecurityPolicyDeploymentSecurityPolicyEntryStates.d.ts.map