import * as pulumi from "@pulumi/pulumi";
/**
 * Resource Type definition for AWS::Events::Archive
 */
export declare class Archive extends pulumi.CustomResource {
    /**
     * Get an existing Archive resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): Archive;
    /**
     * Returns true if the given object is an instance of Archive.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is Archive;
    /**
     * The name for the archive to create.
     */
    readonly archiveName: pulumi.Output<string | undefined>;
    /**
     * The ARN of the archive created.
     */
    readonly arn: pulumi.Output<string>;
    /**
     * A description for the archive.
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * An event pattern to use to filter events sent to the archive.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Events::Archive` for more information about the expected schema for this property.
     */
    readonly eventPattern: pulumi.Output<any | undefined>;
    /**
     * The identifier of the AWS  customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt this archive. The identifier can be the key Amazon Resource Name (ARN), KeyId, key alias, or key alias ARN.
     *
     * If you do not specify a customer managed key identifier, EventBridge uses an AWS owned key to encrypt the archive.
     *
     * For more information, see [Identify and view keys](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html) in the *AWS Key Management Service Developer Guide* .
     *
     * > If you have specified that EventBridge use a customer managed key for encrypting the source event bus, we strongly recommend you also specify a customer managed key for any archives for the event bus as well.
     * >
     * > For more information, see [Encrypting archives](https://docs.aws.amazon.com/eventbridge/latest/userguide/encryption-archives.html) in the *Amazon EventBridge User Guide* .
     */
    readonly kmsKeyIdentifier: pulumi.Output<string | undefined>;
    /**
     * The number of days to retain events for. Default value is 0. If set to 0, events are retained indefinitely
     */
    readonly retentionDays: pulumi.Output<number | undefined>;
    /**
     * The ARN of the event bus that sends events to the archive.
     */
    readonly sourceArn: pulumi.Output<string>;
    /**
     * Create a Archive resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: ArchiveArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Archive resource.
 */
export interface ArchiveArgs {
    /**
     * The name for the archive to create.
     */
    archiveName?: pulumi.Input<string>;
    /**
     * A description for the archive.
     */
    description?: pulumi.Input<string>;
    /**
     * An event pattern to use to filter events sent to the archive.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Events::Archive` for more information about the expected schema for this property.
     */
    eventPattern?: any;
    /**
     * The identifier of the AWS  customer managed key for EventBridge to use, if you choose to use a customer managed key to encrypt this archive. The identifier can be the key Amazon Resource Name (ARN), KeyId, key alias, or key alias ARN.
     *
     * If you do not specify a customer managed key identifier, EventBridge uses an AWS owned key to encrypt the archive.
     *
     * For more information, see [Identify and view keys](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html) in the *AWS Key Management Service Developer Guide* .
     *
     * > If you have specified that EventBridge use a customer managed key for encrypting the source event bus, we strongly recommend you also specify a customer managed key for any archives for the event bus as well.
     * >
     * > For more information, see [Encrypting archives](https://docs.aws.amazon.com/eventbridge/latest/userguide/encryption-archives.html) in the *Amazon EventBridge User Guide* .
     */
    kmsKeyIdentifier?: pulumi.Input<string>;
    /**
     * The number of days to retain events for. Default value is 0. If set to 0, events are retained indefinitely
     */
    retentionDays?: pulumi.Input<number>;
    /**
     * The ARN of the event bus that sends events to the archive.
     */
    sourceArn: pulumi.Input<string>;
}
