import * as pulumi from "@pulumi/pulumi"; /** * Gets the configuration details of a snapshot. Snapshots are used in [Seek](https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. */ export declare function getSnapshot(args: GetSnapshotArgs, opts?: pulumi.InvokeOptions): Promise; export interface GetSnapshotArgs { project?: string; snapshotId: string; } export interface GetSnapshotResult { /** * Optional. The snapshot is guaranteed to exist up until this time. A newly-created snapshot expires no later than 7 days from the time of its creation. Its exact lifetime is determined at creation by the existing backlog in the source subscription. Specifically, the lifetime of the snapshot is `7 days - (age of oldest unacked message in the subscription)`. For example, consider a subscription whose oldest unacked message is 3 days old. If a snapshot is created from this subscription, the snapshot -- which will always capture this 3-day-old backlog as long as the snapshot exists -- will expire in 4 days. The service will refuse to create a snapshot that would expire in less than 1 hour after creation. */ readonly expireTime: string; /** * Optional. See [Creating and managing labels] (https://cloud.google.com/pubsub/docs/labels). */ readonly labels: { [key: string]: string; }; /** * Optional. The name of the snapshot. */ readonly name: string; /** * Optional. The name of the topic from which this snapshot is retaining messages. */ readonly topic: string; } /** * Gets the configuration details of a snapshot. Snapshots are used in [Seek](https://cloud.google.com/pubsub/docs/replay-overview) operations, which allow you to manage message acknowledgments in bulk. That is, you can set the acknowledgment state of messages in an existing subscription to the state captured by a snapshot. */ export declare function getSnapshotOutput(args: GetSnapshotOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output; export interface GetSnapshotOutputArgs { project?: pulumi.Input; snapshotId: pulumi.Input; }