import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * The Kafka Schema resource allows the creation and management of Aiven Kafka Schemas. Schemas with references are hard deleted, while schemas without references are only soft deleted. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aiven from "@pulumi/aiven"; * * const kafka_schema1 = new aiven.KafkaSchema("kafka-schema1", { * project: kafka_schemas_project1.project, * serviceName: kafka_service1.serviceName, * subjectName: "kafka-schema1", * compatibilityLevel: "FORWARD", * schema: ` { * \\"doc\\": \\"example\\", * \\"fields\\": [ * { * \\"default\\": 5, * \\"doc\\": \\"my test number\\", * \\"name\\": \\"test\\", * \\"namespace\\": \\"test\\", * \\"type\\": \\"int\\" * } * ], * \\"name\\": \\"example\\", * \\"namespace\\": \\"example\\", * \\"type\\": \\"record\\" * } * `, * }); * ``` * * ## Import * * ```sh * $ pulumi import aiven:index/kafkaSchema:KafkaSchema kafka-schema1 project/service_name/subject_name * ``` */ export declare class KafkaSchema extends pulumi.CustomResource { /** * Get an existing KafkaSchema 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?: KafkaSchemaState, opts?: pulumi.CustomResourceOptions): KafkaSchema; /** * Returns true if the given object is an instance of KafkaSchema. 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 KafkaSchema; /** * Kafka Schemas compatibility level. The possible values are `BACKWARD`, `BACKWARD_TRANSITIVE`, `FORWARD`, `FORWARD_TRANSITIVE`, `FULL`, `FULL_TRANSITIVE` and `NONE`. */ readonly compatibilityLevel: pulumi.Output; /** * The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource. */ readonly project: pulumi.Output; /** * Schema references. */ readonly references: pulumi.Output; /** * Kafka Schema configuration. Should be a valid Avro, JSON, or Protobuf schema, depending on the schema type. */ readonly schema: pulumi.Output; /** * Kafka Schema configuration type. Defaults to AVRO. The possible values are `AVRO`, `JSON` and `PROTOBUF`. */ readonly schemaType: pulumi.Output; /** * The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource. */ readonly serviceName: pulumi.Output; /** * The Kafka Schema Subject name. Changing this property forces recreation of the resource. */ readonly subjectName: pulumi.Output; /** * Kafka Schema configuration version. */ readonly version: pulumi.Output; /** * Create a KafkaSchema 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: KafkaSchemaArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering KafkaSchema resources. */ export interface KafkaSchemaState { /** * Kafka Schemas compatibility level. The possible values are `BACKWARD`, `BACKWARD_TRANSITIVE`, `FORWARD`, `FORWARD_TRANSITIVE`, `FULL`, `FULL_TRANSITIVE` and `NONE`. */ compatibilityLevel?: pulumi.Input; /** * The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource. */ project?: pulumi.Input; /** * Schema references. */ references?: pulumi.Input[] | undefined>; /** * Kafka Schema configuration. Should be a valid Avro, JSON, or Protobuf schema, depending on the schema type. */ schema?: pulumi.Input; /** * Kafka Schema configuration type. Defaults to AVRO. The possible values are `AVRO`, `JSON` and `PROTOBUF`. */ schemaType?: pulumi.Input; /** * The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource. */ serviceName?: pulumi.Input; /** * The Kafka Schema Subject name. Changing this property forces recreation of the resource. */ subjectName?: pulumi.Input; /** * Kafka Schema configuration version. */ version?: pulumi.Input; } /** * The set of arguments for constructing a KafkaSchema resource. */ export interface KafkaSchemaArgs { /** * Kafka Schemas compatibility level. The possible values are `BACKWARD`, `BACKWARD_TRANSITIVE`, `FORWARD`, `FORWARD_TRANSITIVE`, `FULL`, `FULL_TRANSITIVE` and `NONE`. */ compatibilityLevel?: pulumi.Input; /** * The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource. */ project: pulumi.Input; /** * Schema references. */ references?: pulumi.Input[] | undefined>; /** * Kafka Schema configuration. Should be a valid Avro, JSON, or Protobuf schema, depending on the schema type. */ schema: pulumi.Input; /** * Kafka Schema configuration type. Defaults to AVRO. The possible values are `AVRO`, `JSON` and `PROTOBUF`. */ schemaType?: pulumi.Input; /** * The name of the service that this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource. */ serviceName: pulumi.Input; /** * The Kafka Schema Subject name. Changing this property forces recreation of the resource. */ subjectName: pulumi.Input; } //# sourceMappingURL=kafkaSchema.d.ts.map