import * as pulumi from "@pulumi/pulumi";
/**
 * This data source provides details about a specific Object resource in Oracle Cloud Infrastructure Object Storage service.
 *
 * Gets the metadata and body of an object.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testObject = oci.objectstorage.getObject({
 *     bucket: objectBucket,
 *     namespace: objectNamespace,
 *     object: objectObject,
 *     httpResponseCacheControl: objectHttpResponseCacheControl,
 *     httpResponseContentDisposition: objectHttpResponseContentDisposition,
 *     httpResponseContentEncoding: objectHttpResponseContentEncoding,
 *     httpResponseContentLanguage: objectHttpResponseContentLanguage,
 *     httpResponseContentType: objectHttpResponseContentType,
 *     httpResponseExpires: objectHttpResponseExpires,
 *     versionId: testVersion.id,
 * });
 * ```
 */
export declare function getObject(args: GetObjectArgs, opts?: pulumi.InvokeOptions): Promise<GetObjectResult>;
/**
 * A collection of arguments for invoking getObject.
 */
export interface GetObjectArgs {
    /**
     * Encodes the downloaded content in base64. It is recommended to set this to `true` for binary content to avoid corrupting the zip file in Terraform state. The default value is `false` to preserve backwards compatibility with Terraform v0.11 configurations.
     * If passing the base64 encoded content to a `localFile` resource, please use the `contentBase64` attribute of the `localFile` resource.
     */
    base64EncodeContent?: boolean;
    /**
     * The name of the bucket. Avoid entering confidential information. Example: `my-new-bucket1`
     */
    bucket: string;
    /**
     * The limit of the content length of the object body to download from the object store. The default is 1Mb.
     */
    contentLengthLimit?: number;
    /**
     * Specify this query parameter to override the Cache-Control response header in the GetObject response.
     */
    httpResponseCacheControl?: string;
    /**
     * Specify this query parameter to override the value of the Content-Disposition response header in the GetObject response.
     */
    httpResponseContentDisposition?: string;
    /**
     * Specify this query parameter to override the Content-Encoding response header in the GetObject response.
     */
    httpResponseContentEncoding?: string;
    /**
     * Specify this query parameter to override the Content-Language response header in the GetObject response.
     */
    httpResponseContentLanguage?: string;
    /**
     * Specify this query parameter to override the Content-Type response header in the GetObject response.
     */
    httpResponseContentType?: string;
    /**
     * Specify this query parameter to override the Expires response header in the GetObject response.
     */
    httpResponseExpires?: string;
    /**
     * The Object Storage namespace used for the request.
     */
    namespace: string;
    /**
     * The name of the object. Avoid entering confidential information. Example: `test/object1.log`
     */
    object: string;
    /**
     * VersionId used to identify a particular version of the object
     */
    versionId?: string;
}
/**
 * A collection of values returned by getObject.
 */
export interface GetObjectResult {
    readonly base64EncodeContent?: boolean;
    /**
     * The name of the bucket. Avoid entering confidential information. Example: `my-new-bucket1`
     */
    readonly bucket: string;
    readonly cacheControl: string;
    /**
     * The object to upload to the object store.
     */
    readonly content: string;
    readonly contentDisposition: string;
    /**
     * The content encoding of the object.
     */
    readonly contentEncoding: string;
    /**
     * The content language of the object.
     */
    readonly contentLanguage: string;
    /**
     * The content length of the body.
     */
    readonly contentLength: string;
    readonly contentLengthLimit?: number;
    /**
     * The base-64 encoded MD5 hash of the body.
     */
    readonly contentMd5: string;
    /**
     * The content type of the object.  Defaults to 'application/octet-stream' if not overridden during the PutObject call.
     */
    readonly contentType: string;
    readonly httpResponseCacheControl?: string;
    readonly httpResponseContentDisposition?: string;
    readonly httpResponseContentEncoding?: string;
    readonly httpResponseContentLanguage?: string;
    readonly httpResponseContentType?: string;
    readonly httpResponseExpires?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Optional user-defined metadata key and value. Note: Metadata keys are case-insensitive and all returned keys will be lower case.
     */
    readonly metadata: {
        [key: string]: string;
    };
    /**
     * The top-level namespace used for the request.
     */
    readonly namespace: string;
    /**
     * The name of the object. Avoid entering confidential information. Example: `test/object1.log`
     */
    readonly object: string;
    /**
     * The storage tier that the object is stored in.
     */
    readonly storageTier: string;
    readonly versionId: string;
}
/**
 * This data source provides details about a specific Object resource in Oracle Cloud Infrastructure Object Storage service.
 *
 * Gets the metadata and body of an object.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testObject = oci.objectstorage.getObject({
 *     bucket: objectBucket,
 *     namespace: objectNamespace,
 *     object: objectObject,
 *     httpResponseCacheControl: objectHttpResponseCacheControl,
 *     httpResponseContentDisposition: objectHttpResponseContentDisposition,
 *     httpResponseContentEncoding: objectHttpResponseContentEncoding,
 *     httpResponseContentLanguage: objectHttpResponseContentLanguage,
 *     httpResponseContentType: objectHttpResponseContentType,
 *     httpResponseExpires: objectHttpResponseExpires,
 *     versionId: testVersion.id,
 * });
 * ```
 */
export declare function getObjectOutput(args: GetObjectOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetObjectResult>;
/**
 * A collection of arguments for invoking getObject.
 */
export interface GetObjectOutputArgs {
    /**
     * Encodes the downloaded content in base64. It is recommended to set this to `true` for binary content to avoid corrupting the zip file in Terraform state. The default value is `false` to preserve backwards compatibility with Terraform v0.11 configurations.
     * If passing the base64 encoded content to a `localFile` resource, please use the `contentBase64` attribute of the `localFile` resource.
     */
    base64EncodeContent?: pulumi.Input<boolean | undefined>;
    /**
     * The name of the bucket. Avoid entering confidential information. Example: `my-new-bucket1`
     */
    bucket: pulumi.Input<string>;
    /**
     * The limit of the content length of the object body to download from the object store. The default is 1Mb.
     */
    contentLengthLimit?: pulumi.Input<number | undefined>;
    /**
     * Specify this query parameter to override the Cache-Control response header in the GetObject response.
     */
    httpResponseCacheControl?: pulumi.Input<string | undefined>;
    /**
     * Specify this query parameter to override the value of the Content-Disposition response header in the GetObject response.
     */
    httpResponseContentDisposition?: pulumi.Input<string | undefined>;
    /**
     * Specify this query parameter to override the Content-Encoding response header in the GetObject response.
     */
    httpResponseContentEncoding?: pulumi.Input<string | undefined>;
    /**
     * Specify this query parameter to override the Content-Language response header in the GetObject response.
     */
    httpResponseContentLanguage?: pulumi.Input<string | undefined>;
    /**
     * Specify this query parameter to override the Content-Type response header in the GetObject response.
     */
    httpResponseContentType?: pulumi.Input<string | undefined>;
    /**
     * Specify this query parameter to override the Expires response header in the GetObject response.
     */
    httpResponseExpires?: pulumi.Input<string | undefined>;
    /**
     * The Object Storage namespace used for the request.
     */
    namespace: pulumi.Input<string>;
    /**
     * The name of the object. Avoid entering confidential information. Example: `test/object1.log`
     */
    object: pulumi.Input<string>;
    /**
     * VersionId used to identify a particular version of the object
     */
    versionId?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getObject.d.ts.map