import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Get information about a Google Cloud Pub/Sub Topic. For more information see * the [official documentation](https://cloud.google.com/pubsub/docs/) * and [API](https://cloud.google.com/pubsub/docs/apis). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const my_pubsub_topic = gcp.pubsub.getTopic({ * name: "my-pubsub-topic", * }); * ``` */ export declare function getTopic(args: GetTopicArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getTopic. */ export interface GetTopicArgs { /** * The name of the Cloud Pub/Sub Topic. * * - - - */ name: string; /** * The project in which the resource belongs. If it * is not provided, the provider project is used. */ project?: string; } /** * A collection of values returned by getTopic. */ export interface GetTopicResult { readonly effectiveLabels: { [key: string]: string; }; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly ingestionDataSourceSettings: outputs.pubsub.GetTopicIngestionDataSourceSetting[]; readonly kmsKeyName: string; readonly labels: { [key: string]: string; }; readonly messageRetentionDuration: string; readonly messageStoragePolicies: outputs.pubsub.GetTopicMessageStoragePolicy[]; readonly messageTransforms: outputs.pubsub.GetTopicMessageTransform[]; readonly name: string; readonly project?: string; readonly pulumiLabels: { [key: string]: string; }; readonly schemaSettings: outputs.pubsub.GetTopicSchemaSetting[]; readonly tags: { [key: string]: string; }; } /** * Get information about a Google Cloud Pub/Sub Topic. For more information see * the [official documentation](https://cloud.google.com/pubsub/docs/) * and [API](https://cloud.google.com/pubsub/docs/apis). * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const my_pubsub_topic = gcp.pubsub.getTopic({ * name: "my-pubsub-topic", * }); * ``` */ export declare function getTopicOutput(args: GetTopicOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getTopic. */ export interface GetTopicOutputArgs { /** * The name of the Cloud Pub/Sub Topic. * * - - - */ name: pulumi.Input; /** * The project in which the resource belongs. If it * is not provided, the provider project is used. */ project?: pulumi.Input; }