import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Data Source schema for Volcengine::Kafka::Topic */ export declare function getTopic(args: GetTopicArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getTopic. */ export interface GetTopicArgs { /** * Uniquely identifies the resource. */ id: string; } /** * A collection of values returned by getTopic. */ export interface GetTopicResult { /** * Custom permission configuration, which sets custom permissions for certain users on this Topic. Only required when AllAuthority is False. */ readonly accessPolicies: outputs.kafka.GetTopicAccessPolicy[]; /** * Whether read/write permissions are enabled by default for all users on the Topic to be created. true: (default) All users have read/write permissions for this Topic. false: Not all users have read/write permissions for this Topic. By default, users inherit their default permissions for this Topic. If the default permissions do not meet your requirements, you can specify custom permissions for a user on this Topic through AccessPolicies. */ readonly allAuthority: boolean; /** * Topic message cleanup policy supports the following three options: [delete]: The default message cleanup policy. When disk space is sufficient, messages are retained within the maximum retention period; when disk space is insufficient, old messages are deleted early to ensure service availability. [compact]: The COMPACT message cleanup policy consolidates messages by Key, retaining only the latest value for messages with the same Key, and removing older records. [delete,compact]: Configures both DELETE and COMPACT message cleanup policies. Messages will be deleted as soon as they meet any of the cleanup criteria. */ readonly cleanupPolicies: string[]; /** * Topic creation time. */ readonly createdTime: string; /** * Topic description. Maximum length: 128 characters. */ readonly description: string; /** * Uniquely identifies the resource. */ readonly id: string; /** * Instance ID. */ readonly instanceId: string; /** * Message retention period, in hours. The retention period at the Topic level ranges from 1 to 2160 hours (90 days). */ readonly logRetentionHours: number; /** * Topic-level parameter configuration. Parameters description MinInsyncReplicaNumber:2: Minimum number of in-sync replicas. If the number of in-sync replicas is less than the configured value, messages cannot be written to the Topic. Higher values increase data reliability but reduce availability. The default is replica count minus 1. For Topic availability, it is recommended to set this to replica count minus 1. MessageMaxByte:12: Maximum message size, in MB, range 1–12. By default, inherits the instance's maximum message size setting. LogRetentionHours:72: Message retention period, in hours, range 0–2160 (up to 90 days). By default, inherits the instance's message retention period setting. */ readonly parameters: string; /** * Number of Topic partitions. The range is 1–300. If other Topics have already been created in the instance, the total number of partitions across all Topics must not exceed the partition limit of the instance. If the number of partitions does not meet your business needs, you can purchase more partitions to increase the partition limit of the instance. */ readonly partitionNumber: number; /** * Number of Topic replicas. Can be set to 2 or 3; the default is 3. */ readonly replicaNumber: number; /** * Topic status. */ readonly status: string; /** * Topic label information */ readonly tags: outputs.kafka.GetTopicTag[]; /** * Name of the Topic to be created. 3–64 characters. Must start with a letter or number. Supported characters include letters, numbers, hyphens (-), underscores (_), and periods (.). */ readonly topicName: string; /** * The current Topic data size as a percentage of the instance's total storage space. Displayed on the console as a percentage with two decimal places. */ readonly usedStoragePercentageInInstance: number; /** * Total storage space currently used by the Topic. */ readonly usedStorageSpaceInBytes: number; } /** * Data Source schema for Volcengine::Kafka::Topic */ export declare function getTopicOutput(args: GetTopicOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getTopic. */ export interface GetTopicOutputArgs { /** * Uniquely identifies the resource. */ id: pulumi.Input; }