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 Generic Artifacts in Oracle Cloud Infrastructure Artifacts service.
 *
 * Lists artifacts in the specified repository.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testGenericArtifacts = oci.artifacts.getGenericArtifacts({
 *     compartmentId: compartmentId,
 *     repositoryId: testRepository.id,
 *     artifactPath: genericArtifactArtifactPath,
 *     displayName: genericArtifactDisplayName,
 *     id: genericArtifactId,
 *     sha256: genericArtifactSha256,
 *     state: genericArtifactState,
 *     version: genericArtifactVersion,
 * });
 * ```
 */
export declare function getGenericArtifacts(args: GetGenericArtifactsArgs, opts?: pulumi.InvokeOptions): Promise<GetGenericArtifactsResult>;
/**
 * A collection of arguments for invoking getGenericArtifacts.
 */
export interface GetGenericArtifactsArgs {
    /**
     * Filter results by a prefix for the `artifactPath` and and return artifacts that begin with the specified prefix in their path.
     */
    artifactPath?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId: string;
    /**
     * A filter to return only resources that match the given display name exactly.
     */
    displayName?: string;
    filters?: inputs.Artifacts.GetGenericArtifactsFilter[];
    /**
     * A filter to return the resources for the specified OCID.
     */
    id?: string;
    /**
     * A filter to return the artifacts only for the specified repository OCID.
     */
    repositoryId: string;
    /**
     * Filter results by a specified SHA256 digest for the artifact.
     */
    sha256?: string;
    /**
     * A filter to return only resources that match the given lifecycle state name exactly.
     */
    state?: string;
    /**
     * Filter results by a prefix for `version` and return artifacts that that begin with the specified prefix in their version.
     */
    version?: string;
}
/**
 * A collection of values returned by getGenericArtifacts.
 */
export interface GetGenericArtifactsResult {
    /**
     * A user-defined path to describe the location of an artifact. Slashes do not create a directory structure, but you can use slashes to organize the repository. An artifact path does not include an artifact version.  Example: `project01/my-web-app/artifact-abc`
     */
    readonly artifactPath?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the repository's compartment.
     */
    readonly compartmentId: string;
    /**
     * The artifact name with the format of `<artifact-path>:<artifact-version>`. The artifact name is truncated to a maximum length of 255.  Example: `project01/my-web-app/artifact-abc:1.0.0`
     */
    readonly displayName?: string;
    readonly filters?: outputs.Artifacts.GetGenericArtifactsFilter[];
    /**
     * The list of generic_artifact_collection.
     */
    readonly genericArtifactCollections: outputs.Artifacts.GetGenericArtifactsGenericArtifactCollection[];
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the artifact.  Example: `ocid1.genericartifact.oc1..exampleuniqueID`
     */
    readonly id?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the repository.
     */
    readonly repositoryId: string;
    /**
     * The SHA256 digest for the artifact. When you upload an artifact to the repository, a SHA256 digest is calculated and added to the artifact properties.
     */
    readonly sha256?: string;
    /**
     * The current state of the artifact.
     */
    readonly state?: string;
    /**
     * A user-defined string to describe the artifact version.  Example: `1.1.0` or `1.2-beta-2`
     */
    readonly version?: string;
}
/**
 * This data source provides the list of Generic Artifacts in Oracle Cloud Infrastructure Artifacts service.
 *
 * Lists artifacts in the specified repository.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testGenericArtifacts = oci.artifacts.getGenericArtifacts({
 *     compartmentId: compartmentId,
 *     repositoryId: testRepository.id,
 *     artifactPath: genericArtifactArtifactPath,
 *     displayName: genericArtifactDisplayName,
 *     id: genericArtifactId,
 *     sha256: genericArtifactSha256,
 *     state: genericArtifactState,
 *     version: genericArtifactVersion,
 * });
 * ```
 */
export declare function getGenericArtifactsOutput(args: GetGenericArtifactsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetGenericArtifactsResult>;
/**
 * A collection of arguments for invoking getGenericArtifacts.
 */
export interface GetGenericArtifactsOutputArgs {
    /**
     * Filter results by a prefix for the `artifactPath` and and return artifacts that begin with the specified prefix in their path.
     */
    artifactPath?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId: pulumi.Input<string>;
    /**
     * 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.GetGenericArtifactsFilterArgs>[] | undefined>;
    /**
     * A filter to return the resources for the specified OCID.
     */
    id?: pulumi.Input<string | undefined>;
    /**
     * A filter to return the artifacts only for the specified repository OCID.
     */
    repositoryId: pulumi.Input<string>;
    /**
     * Filter results by a specified SHA256 digest for the artifact.
     */
    sha256?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources that match the given lifecycle state name exactly.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * Filter results by a prefix for `version` and return artifacts that that begin with the specified prefix in their version.
     */
    version?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getGenericArtifacts.d.ts.map