version: "0.0.1" name: example types: example::Object: properties: foo: "$ref": "#/resources/example::Resource" bar: type: string others: type: array items: type: array items: "$ref": "#/types/example::SomeOtherObject" description: List of lists of other objects configs: type: array items: "$ref": "#/types/example::ConfigMap" stillOthers: type: object additionalProperties: type: array items: "$ref": "#/types/example::SomeOtherObject" description: Mapping from string to list of some other object type: object example::OtherResourceOutput: properties: foo: type: string type: object example::SomeOtherObject: properties: baz: type: string type: object example::ConfigMap: properties: config: type: string type: object example::ObjectWithNodeOptionalInputs: properties: foo: type: string bar: type: integer required: [foo] language: nodejs: "requiredInputs": [] type: object example::OutputOnlyObjectType: properties: foo: type: string type: object example::OutputOnlyEnumType: type: string enum: - value: foo - value: bar example::RubberTreeVariety: type: string description: types of rubber trees enum: - value: Burgundy description: A burgundy rubber tree. - value: Ruby description: A ruby rubber tree. - value: Tineke description: A tineke rubber tree. resources: example::Resource: properties: bar: type: string secret: true inputProperties: bar: type: string secret: true type: object example::OtherResource: isComponent: true properties: foo: "$ref": "#/resources/example::Resource" inputProperties: foo: "$ref": "#/resources/example::Resource" bar: type: array items: type: string plain: true type: object example::TypeUses: properties: foo: "$ref": "#/types/example::Object" bar: "$ref": "#/types/example::SomeOtherObject" baz: "$ref": "#/types/example::ObjectWithNodeOptionalInputs" qux: "$ref": "#/types/example::RubberTreeVariety" zed: "$ref": "#/types/example::OutputOnlyObjectType" alpha: "$ref": "#/types/example::OutputOnlyEnumType" beta: type: array items: "$ref": "#/types/example::OutputOnlyObjectType" gamma: type: object additionalProperties: "$ref": "#/types/example::OutputOnlyEnumType" inputProperties: foo: "$ref": "#/types/example::Object" bar: "$ref": "#/types/example::SomeOtherObject" baz: "$ref": "#/types/example::ObjectWithNodeOptionalInputs" qux: "$ref": "#/types/example::RubberTreeVariety" type: object functions: example::argFunction: inputs: properties: arg1: "$ref": "#/resources/example::Resource" outputs: properties: result: "$ref": "#/resources/example::Resource" language: csharp: { "packageReferences": { "Pulumi": "3.23" } } go: { "importBasePath": "simple-yaml-schema/example", "disableFunctionOutputVersions": true } nodejs: { "dependencies": { "@pulumi/pulumi": "^3.12" }, "devDependencies": { "typescript": "^3.7.0" }, } python: {}