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 Container Image Signatures in Oracle Cloud Infrastructure Artifacts service.
 *
 * List container image signatures in an image.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testContainerImageSignatures = oci.artifacts.getContainerSignatures({
 *     compartmentId: compartmentId,
 *     compartmentIdInSubtree: containerImageSignatureCompartmentIdInSubtree === "true",
 *     displayName: containerImageSignatureDisplayName,
 *     imageDigest: containerImageSignatureImageDigest,
 *     imageId: testImage.id,
 *     kmsKeyId: testKey.id,
 *     kmsKeyVersionId: testKeyVersion.id,
 *     repositoryId: testRepository.id,
 *     repositoryName: testRepository.name,
 *     signingAlgorithm: containerImageSignatureSigningAlgorithm,
 * });
 * ```
 */
export declare function getContainerSignatures(args: GetContainerSignaturesArgs, opts?: pulumi.InvokeOptions): Promise<GetContainerSignaturesResult>;
/**
 * A collection of arguments for invoking getContainerSignatures.
 */
export interface GetContainerSignaturesArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId: string;
    /**
     * When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are inspected depending on the the setting of `accessLevel`. Default is false. Can only be set to true when calling the API on the tenancy (root compartment).
     */
    compartmentIdInSubtree?: boolean;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: string;
    filters?: inputs.Artifacts.GetContainerSignaturesFilter[];
    /**
     * The digest of the container image.  Example: `sha256:e7d38b3517548a1c71e41bffe9c8ae6d6d29546ce46bf62159837aad072c90aa`
     */
    imageDigest?: string;
    /**
     * A filter to return a container image summary only for the specified container image OCID.
     */
    imageId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the kmsKeyVersionId used to sign the container image.  Example: `ocid1.keyversion.oc1..exampleuniqueID`
     */
    kmsKeyId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the kmsKeyVersionId used to sign the container image.  Example: `ocid1.keyversion.oc1..exampleuniqueID`
     */
    kmsKeyVersionId?: string;
    /**
     * A filter to return container images only for the specified container repository OCID.
     */
    repositoryId?: string;
    /**
     * A filter to return container images or container image signatures that match the repository name.  Example: `foo` or `foo*`
     */
    repositoryName?: string;
    /**
     * The algorithm to be used for signing. These are the only supported signing algorithms for container images.
     */
    signingAlgorithm?: string;
}
/**
 * A collection of values returned by getContainerSignatures.
 */
export interface GetContainerSignaturesResult {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment in which the container repository exists.
     */
    readonly compartmentId: string;
    readonly compartmentIdInSubtree?: boolean;
    /**
     * The list of container_image_signature_collection.
     */
    readonly containerImageSignatureCollections: outputs.Artifacts.GetContainerSignaturesContainerImageSignatureCollection[];
    /**
     * The last 10 characters of the kmsKeyId, the last 10 characters of the kmsKeyVersionId, the signingAlgorithm, and the last 10 characters of the signatureId.  Example: `wrmz22sixa::qdwyc2ptun::SHA_256_RSA_PKCS_PSS::2vwmobasva`
     */
    readonly displayName?: string;
    readonly filters?: outputs.Artifacts.GetContainerSignaturesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly imageDigest?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the container image.  Example: `ocid1.containerimage.oc1..exampleuniqueID`
     */
    readonly imageId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the kmsKeyId used to sign the container image.  Example: `ocid1.key.oc1..exampleuniqueID`
     */
    readonly kmsKeyId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the kmsKeyVersionId used to sign the container image.  Example: `ocid1.keyversion.oc1..exampleuniqueID`
     */
    readonly kmsKeyVersionId?: string;
    readonly repositoryId?: string;
    readonly repositoryName?: string;
    /**
     * The algorithm to be used for signing. These are the only supported signing algorithms for container images.
     */
    readonly signingAlgorithm?: string;
}
/**
 * This data source provides the list of Container Image Signatures in Oracle Cloud Infrastructure Artifacts service.
 *
 * List container image signatures in an image.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testContainerImageSignatures = oci.artifacts.getContainerSignatures({
 *     compartmentId: compartmentId,
 *     compartmentIdInSubtree: containerImageSignatureCompartmentIdInSubtree === "true",
 *     displayName: containerImageSignatureDisplayName,
 *     imageDigest: containerImageSignatureImageDigest,
 *     imageId: testImage.id,
 *     kmsKeyId: testKey.id,
 *     kmsKeyVersionId: testKeyVersion.id,
 *     repositoryId: testRepository.id,
 *     repositoryName: testRepository.name,
 *     signingAlgorithm: containerImageSignatureSigningAlgorithm,
 * });
 * ```
 */
export declare function getContainerSignaturesOutput(args: GetContainerSignaturesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetContainerSignaturesResult>;
/**
 * A collection of arguments for invoking getContainerSignatures.
 */
export interface GetContainerSignaturesOutputArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId: pulumi.Input<string>;
    /**
     * When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are inspected depending on the the setting of `accessLevel`. Default is false. Can only be set to true when calling the API on the tenancy (root compartment).
     */
    compartmentIdInSubtree?: pulumi.Input<boolean | undefined>;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.Artifacts.GetContainerSignaturesFilterArgs>[] | undefined>;
    /**
     * The digest of the container image.  Example: `sha256:e7d38b3517548a1c71e41bffe9c8ae6d6d29546ce46bf62159837aad072c90aa`
     */
    imageDigest?: pulumi.Input<string | undefined>;
    /**
     * A filter to return a container image summary only for the specified container image OCID.
     */
    imageId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the kmsKeyVersionId used to sign the container image.  Example: `ocid1.keyversion.oc1..exampleuniqueID`
     */
    kmsKeyId?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the kmsKeyVersionId used to sign the container image.  Example: `ocid1.keyversion.oc1..exampleuniqueID`
     */
    kmsKeyVersionId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return container images only for the specified container repository OCID.
     */
    repositoryId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return container images or container image signatures that match the repository name.  Example: `foo` or `foo*`
     */
    repositoryName?: pulumi.Input<string | undefined>;
    /**
     * The algorithm to be used for signing. These are the only supported signing algorithms for container images.
     */
    signingAlgorithm?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getContainerSignatures.d.ts.map