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 Sensitive Types in Oracle Cloud Infrastructure Data Safe service.
 *
 * Gets a list of sensitive types based on the specified query parameters.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testSensitiveTypes = oci.datasafe.getSensitiveTypes({
 *     compartmentId: compartmentId,
 *     accessLevel: sensitiveTypeAccessLevel,
 *     compartmentIdInSubtree: sensitiveTypeCompartmentIdInSubtree === "true",
 *     defaultMaskingFormatId: testDefaultMaskingFormat.id,
 *     displayName: sensitiveTypeDisplayName,
 *     entityType: sensitiveTypeEntityType,
 *     isCommon: sensitiveTypeIsCommon === "true",
 *     parentCategoryId: testCategory.id,
 *     sensitiveTypeId: testSensitiveType.id,
 *     sensitiveTypeSource: sensitiveTypeSensitiveTypeSource,
 *     state: sensitiveTypeState,
 *     timeCreatedGreaterThanOrEqualTo: sensitiveTypeTimeCreatedGreaterThanOrEqualTo,
 *     timeCreatedLessThan: sensitiveTypeTimeCreatedLessThan,
 * });
 * ```
 */
export declare function getSensitiveTypes(args: GetSensitiveTypesArgs, opts?: pulumi.InvokeOptions): Promise<GetSensitiveTypesResult>;
/**
 * A collection of arguments for invoking getSensitiveTypes.
 */
export interface GetSensitiveTypesArgs {
    /**
     * 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;
    /**
     * 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;
    /**
     * A filter to return only the sensitive types that have the default masking format identified by the specified OCID.
     */
    defaultMaskingFormatId?: string;
    /**
     * A filter to return only resources that match the specified display name.
     */
    displayName?: string;
    /**
     * A filter to return the sensitive type resources based on the value of their entityType attribute.
     */
    entityType?: string;
    filters?: inputs.DataSafe.GetSensitiveTypesFilter[];
    /**
     * A filter to return only the common sensitive type resources. Common sensitive types belong to  library sensitive types which are frequently used to perform sensitive data discovery.
     */
    isCommon?: boolean;
    /**
     * A filter to return only the sensitive types that are children of the sensitive category identified by the specified OCID.
     */
    parentCategoryId?: string;
    /**
     * A filter to return only items related to a specific sensitive type OCID.
     */
    sensitiveTypeId?: string;
    /**
     * A filter to return the sensitive type resources based on the value of their source attribute.
     */
    sensitiveTypeSource?: string;
    /**
     * A filter to return only the resources that match the specified lifecycle state.
     */
    state?: string;
    /**
     * A filter to return only the resources that were created after the specified date and time, as defined by [RFC3339](https://tools.ietf.org/html/rfc3339). Using TimeCreatedGreaterThanOrEqualToQueryParam parameter retrieves all resources created after that date.
     *
     * **Example:** 2016-12-19T16:39:57.600Z
     */
    timeCreatedGreaterThanOrEqualTo?: string;
    /**
     * Search for resources that were created before a specific date. Specifying this parameter corresponding `timeCreatedLessThan` parameter will retrieve all resources created before the specified created date, in "YYYY-MM-ddThh:mmZ" format with a Z offset, as defined by RFC 3339.
     *
     * **Example:** 2016-12-19T16:39:57.600Z
     */
    timeCreatedLessThan?: string;
}
/**
 * A collection of values returned by getSensitiveTypes.
 */
export interface GetSensitiveTypesResult {
    readonly accessLevel?: string;
    /**
     * The OCID of the compartment that contains the sensitive type.
     */
    readonly compartmentId: string;
    readonly compartmentIdInSubtree?: boolean;
    /**
     * The OCID of the library masking format that should be used to mask the sensitive columns associated with the sensitive type.
     */
    readonly defaultMaskingFormatId?: string;
    /**
     * The display name of the sensitive type.
     */
    readonly displayName?: string;
    /**
     * The entity type. It can be either a sensitive type with regular expressions or a sensitive category used for grouping similar sensitive types.
     */
    readonly entityType?: string;
    readonly filters?: outputs.DataSafe.GetSensitiveTypesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Specifies whether the sensitive type is common. Common sensitive types belong to  library sensitive types which are frequently used to perform sensitive data discovery.
     */
    readonly isCommon?: boolean;
    /**
     * The OCID of the parent sensitive category.
     */
    readonly parentCategoryId?: string;
    /**
     * The list of sensitive_type_collection.
     */
    readonly sensitiveTypeCollections: outputs.DataSafe.GetSensitiveTypesSensitiveTypeCollection[];
    readonly sensitiveTypeId?: string;
    readonly sensitiveTypeSource?: string;
    /**
     * The current state of the sensitive type.
     */
    readonly state?: string;
    readonly timeCreatedGreaterThanOrEqualTo?: string;
    readonly timeCreatedLessThan?: string;
}
/**
 * This data source provides the list of Sensitive Types in Oracle Cloud Infrastructure Data Safe service.
 *
 * Gets a list of sensitive types based on the specified query parameters.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testSensitiveTypes = oci.datasafe.getSensitiveTypes({
 *     compartmentId: compartmentId,
 *     accessLevel: sensitiveTypeAccessLevel,
 *     compartmentIdInSubtree: sensitiveTypeCompartmentIdInSubtree === "true",
 *     defaultMaskingFormatId: testDefaultMaskingFormat.id,
 *     displayName: sensitiveTypeDisplayName,
 *     entityType: sensitiveTypeEntityType,
 *     isCommon: sensitiveTypeIsCommon === "true",
 *     parentCategoryId: testCategory.id,
 *     sensitiveTypeId: testSensitiveType.id,
 *     sensitiveTypeSource: sensitiveTypeSensitiveTypeSource,
 *     state: sensitiveTypeState,
 *     timeCreatedGreaterThanOrEqualTo: sensitiveTypeTimeCreatedGreaterThanOrEqualTo,
 *     timeCreatedLessThan: sensitiveTypeTimeCreatedLessThan,
 * });
 * ```
 */
export declare function getSensitiveTypesOutput(args: GetSensitiveTypesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSensitiveTypesResult>;
/**
 * A collection of arguments for invoking getSensitiveTypes.
 */
export interface GetSensitiveTypesOutputArgs {
    /**
     * 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>;
    /**
     * A filter to return only resources that match the specified compartment OCID.
     */
    compartmentId: pulumi.Input<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?: pulumi.Input<boolean | undefined>;
    /**
     * A filter to return only the sensitive types that have the default masking format identified by the specified OCID.
     */
    defaultMaskingFormatId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources that match the specified display name.
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * A filter to return the sensitive type resources based on the value of their entityType attribute.
     */
    entityType?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.DataSafe.GetSensitiveTypesFilterArgs>[] | undefined>;
    /**
     * A filter to return only the common sensitive type resources. Common sensitive types belong to  library sensitive types which are frequently used to perform sensitive data discovery.
     */
    isCommon?: pulumi.Input<boolean | undefined>;
    /**
     * A filter to return only the sensitive types that are children of the sensitive category identified by the specified OCID.
     */
    parentCategoryId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only items related to a specific sensitive type OCID.
     */
    sensitiveTypeId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return the sensitive type resources based on the value of their source attribute.
     */
    sensitiveTypeSource?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only the resources that match the specified lifecycle state.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only the resources that were created after the specified date and time, as defined by [RFC3339](https://tools.ietf.org/html/rfc3339). Using TimeCreatedGreaterThanOrEqualToQueryParam parameter retrieves all resources created after that date.
     *
     * **Example:** 2016-12-19T16:39:57.600Z
     */
    timeCreatedGreaterThanOrEqualTo?: pulumi.Input<string | undefined>;
    /**
     * Search for resources that were created before a specific date. Specifying this parameter corresponding `timeCreatedLessThan` parameter will retrieve all resources created before the specified created date, in "YYYY-MM-ddThh:mmZ" format with a Z offset, as defined by RFC 3339.
     *
     * **Example:** 2016-12-19T16:39:57.600Z
     */
    timeCreatedLessThan?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getSensitiveTypes.d.ts.map