import * as pulumi from "@pulumi/pulumi";
/**
 * Resource Type definition for AWS::Events::Archive
 */
export declare function getArchive(args: GetArchiveArgs, opts?: pulumi.InvokeOptions): Promise<GetArchiveResult>;
export interface GetArchiveArgs {
    /**
     * The name for the archive to create.
     */
    archiveName: string;
}
export interface GetArchiveResult {
    /**
     * The ARN of the archive created.
     */
    readonly arn?: string;
    /**
     * A description for the archive.
     */
    readonly description?: 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.
     */
    readonly eventPattern?: any;
    /**
     * The identifier of the AWS KMS 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?: string;
    /**
     * The number of days to retain events for. Default value is 0. If set to 0, events are retained indefinitely
     */
    readonly retentionDays?: number;
}
/**
 * Resource Type definition for AWS::Events::Archive
 */
export declare function getArchiveOutput(args: GetArchiveOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetArchiveResult>;
export interface GetArchiveOutputArgs {
    /**
     * The name for the archive to create.
     */
    archiveName: pulumi.Input<string>;
}
