import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * In a RocketMQ instance, a Topic is the basic unit for sending and consuming messages. RocketMQ Message Queue categorizes and manages different types of messages using Topics. Producers send messages to RocketMQ Topics, and consumers consume messages by subscribing to those Topics. * * ## Import * * ```sh * $ pulumi import volcenginecc:rocketmq/topic:Topic example "instance_id|topic_name" * ``` */ export declare class Topic extends pulumi.CustomResource { /** * Get an existing Topic 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 state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: TopicState, opts?: pulumi.CustomResourceOptions): Topic; /** * Returns true if the given object is an instance of Topic. 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 Topic; readonly accessPolicies: pulumi.Output; /** * Topic creation time. */ readonly createdTime: pulumi.Output; /** * Topic description, length: 0–128 characters. */ readonly description: pulumi.Output; readonly groupsInfos: pulumi.Output; /** * Instance ID. */ readonly instanceId: pulumi.Output; /** * Instance name. */ readonly instanceName: pulumi.Output; /** * Message type. Set this parameter to filter the Topic list by the specified message type. Value description: 0: Normal message. 1: Transaction message. 2: Partitioned ordered message. 3: Globally ordered message. 4: Delayed message. */ readonly messageType: pulumi.Output; /** * Set the number of queues for the current Topic. The maximum cannot exceed the remaining available queues for the current instance. For queue limits per instance specification, refer to the product specifications. When creating a Topic in a 4.x version instance, set the number of queues as follows: For globally ordered Topics, the default queue number is 1. For other Topic types, the queue number depends on the compute specification. For n3 and below, the default is 6; for above n3, the default is twice the number of broker groups. It is recommended to set the queue number as a multiple of the number of compute nodes to avoid data imbalance across Brokers. For example, for the rocketmq.n3.x2.medium specification with 3 compute nodes, set the queue number to a multiple of 3, such as 3, 6, or 9. When creating a Topic in a 5.x version instance, set the number of queues as follows: For globally ordered Topics, the default queue number is 1. For other Topic types, the default is twice the number of broker groups. In non-ordered scenarios, performance is not affected by the number of queues; more queues only improve concurrent performance for ordered consumption. */ readonly queueNumber: pulumi.Output; readonly queuesInfos: pulumi.Output; readonly readAccessPolicies: pulumi.Output; /** * Service status. Creating: being created, Running: running, Deleting: being deleted, Abnormal: abnormal, Updating: being updated. */ readonly serviceStatus: pulumi.Output; /** * Topic name. Naming rules: Length must be 3–100 characters. Only English letters, numbers, hyphens (-), and underscores (*) are allowed. Topic names cannot contain the following reserved characters or special prefixes. Reserved characters: RMQ*SYS*TRANS*OP*HALF*TOPIC, BenchmarkTest, TBW102, OFFSET*MOVED*EVENT, SELF*TEST*TOPIC, RMQ*SYS*TRANS*HALF*TOPIC, SCHEDULE*TOPIC*XXXX, RMQ*SYS*TRACE*TOPIC. Special prefixes: rocketmq-broker-, %RETRY%, rmq*sys_, %DLQ%. */ readonly topicName: pulumi.Output; /** * Create a Topic 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: TopicArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Topic resources. */ export interface TopicState { accessPolicies?: pulumi.Input[]>; /** * Topic creation time. */ createdTime?: pulumi.Input; /** * Topic description, length: 0–128 characters. */ description?: pulumi.Input; groupsInfos?: pulumi.Input[]>; /** * Instance ID. */ instanceId?: pulumi.Input; /** * Instance name. */ instanceName?: pulumi.Input; /** * Message type. Set this parameter to filter the Topic list by the specified message type. Value description: 0: Normal message. 1: Transaction message. 2: Partitioned ordered message. 3: Globally ordered message. 4: Delayed message. */ messageType?: pulumi.Input; /** * Set the number of queues for the current Topic. The maximum cannot exceed the remaining available queues for the current instance. For queue limits per instance specification, refer to the product specifications. When creating a Topic in a 4.x version instance, set the number of queues as follows: For globally ordered Topics, the default queue number is 1. For other Topic types, the queue number depends on the compute specification. For n3 and below, the default is 6; for above n3, the default is twice the number of broker groups. It is recommended to set the queue number as a multiple of the number of compute nodes to avoid data imbalance across Brokers. For example, for the rocketmq.n3.x2.medium specification with 3 compute nodes, set the queue number to a multiple of 3, such as 3, 6, or 9. When creating a Topic in a 5.x version instance, set the number of queues as follows: For globally ordered Topics, the default queue number is 1. For other Topic types, the default is twice the number of broker groups. In non-ordered scenarios, performance is not affected by the number of queues; more queues only improve concurrent performance for ordered consumption. */ queueNumber?: pulumi.Input; queuesInfos?: pulumi.Input[]>; readAccessPolicies?: pulumi.Input[]>; /** * Service status. Creating: being created, Running: running, Deleting: being deleted, Abnormal: abnormal, Updating: being updated. */ serviceStatus?: pulumi.Input; /** * Topic name. Naming rules: Length must be 3–100 characters. Only English letters, numbers, hyphens (-), and underscores (*) are allowed. Topic names cannot contain the following reserved characters or special prefixes. Reserved characters: RMQ*SYS*TRANS*OP*HALF*TOPIC, BenchmarkTest, TBW102, OFFSET*MOVED*EVENT, SELF*TEST*TOPIC, RMQ*SYS*TRANS*HALF*TOPIC, SCHEDULE*TOPIC*XXXX, RMQ*SYS*TRACE*TOPIC. Special prefixes: rocketmq-broker-, %RETRY%, rmq*sys_, %DLQ%. */ topicName?: pulumi.Input; } /** * The set of arguments for constructing a Topic resource. */ export interface TopicArgs { accessPolicies?: pulumi.Input[]>; /** * Topic description, length: 0–128 characters. */ description?: pulumi.Input; /** * Instance ID. */ instanceId: pulumi.Input; /** * Message type. Set this parameter to filter the Topic list by the specified message type. Value description: 0: Normal message. 1: Transaction message. 2: Partitioned ordered message. 3: Globally ordered message. 4: Delayed message. */ messageType: pulumi.Input; /** * Set the number of queues for the current Topic. The maximum cannot exceed the remaining available queues for the current instance. For queue limits per instance specification, refer to the product specifications. When creating a Topic in a 4.x version instance, set the number of queues as follows: For globally ordered Topics, the default queue number is 1. For other Topic types, the queue number depends on the compute specification. For n3 and below, the default is 6; for above n3, the default is twice the number of broker groups. It is recommended to set the queue number as a multiple of the number of compute nodes to avoid data imbalance across Brokers. For example, for the rocketmq.n3.x2.medium specification with 3 compute nodes, set the queue number to a multiple of 3, such as 3, 6, or 9. When creating a Topic in a 5.x version instance, set the number of queues as follows: For globally ordered Topics, the default queue number is 1. For other Topic types, the default is twice the number of broker groups. In non-ordered scenarios, performance is not affected by the number of queues; more queues only improve concurrent performance for ordered consumption. */ queueNumber: pulumi.Input; /** * Topic name. Naming rules: Length must be 3–100 characters. Only English letters, numbers, hyphens (-), and underscores (*) are allowed. Topic names cannot contain the following reserved characters or special prefixes. Reserved characters: RMQ*SYS*TRANS*OP*HALF*TOPIC, BenchmarkTest, TBW102, OFFSET*MOVED*EVENT, SELF*TEST*TOPIC, RMQ*SYS*TRANS*HALF*TOPIC, SCHEDULE*TOPIC*XXXX, RMQ*SYS*TRACE*TOPIC. Special prefixes: rocketmq-broker-, %RETRY%, rmq*sys_, %DLQ%. */ topicName: pulumi.Input; }