AivenKafkaDefinition

interface AivenKafkaDefinition { [aivenKafkaDefinitionBrand]: true; acls: Readonly<Record<string, AivenKafkaAclArgs>>; topics: Readonly<Record<string, AivenKafkaTopicArgs>>; users: Readonly<Record<string, AivenKafkaUserArgs>>; }

Immutable, normalised plan-time configuration accepted by AivenKafka.

Remarks

Create definitions only with defineAivenKafkaDefinition. The object contains declarations, not live Aiven or Pulumi resources. The definition wrapper and top-level maps are frozen; nested provider arguments remain consumer-owned and must not be mutated after capture so Pulumi inputs continue to work normally.

Naming: this value-only definition owns no Pulumi logical name or provider resource name. Its map keys are retained as raw child discriminators by AivenKafka when that component creates resources.

Example

CODE
const definition: AivenKafkaDefinition = defineAivenKafkaDefinition({
  topics,
  users,
  acls: {
    read: { create: { permission: 'read', topic: topics.orders, username: users.consumer } },
  },
});

Properties

[aivenKafkaDefinitionBrand]: true

readonly

Nominal definition brand.

acls: Readonly<Record<string, AivenKafkaAclArgs>>

readonly

ACL declarations with handles translated to internal key selectors.

topics: Readonly<Record<string, AivenKafkaTopicArgs>>

readonly

Captured topic declarations keyed by stable logical identity.

users: Readonly<Record<string, AivenKafkaUserArgs>>

readonly

Captured user declarations keyed by stable logical identity.