Contracts
# yaml-language-server: $schema=https://schema.gesslar.dev/bedoc/v1/bedoc-action.jsonprovides:type: objectproperties: functions: type: array items: type: object properties: name: type: string description: type: array items: type: string param: type: array items: type: object properties: type: type: string name: type: string content: type: array items: type: string return: type: object properties: type: type: string content: type: array items: type: string example: type: array items: type: string# yaml-language-server: $schema=https://schema.gesslar.dev/bedoc/v1/bedoc-action.jsonaccepts:type: objectrequired: - functionsproperties: functions: type: array items: type: object required: - name properties: name: type: string description: type: array items: type: string param: type: array items: type: object required: - name - type properties: type: oneOf: - type: string - type: array items: type: string name: type: string content: type: array items: type: string return: type: object required: - type properties: type: oneOf: - type: string - type: array items: type: string content: type: array items: type: string example: type: array items: type: string{ $schema: "https://schema.gesslar.dev/bedoc/v1/bedoc-action.json", provides: { type: "object", properties: { functions: { type: "array", items: { type: "object", properties: { name: { type: "string" }, description: { type: "array", items: { type: "string" } }, param: { type: "array", items: { type: "object", properties: { type: { type: "string" }, name: { type: "string" }, content: { type: "array", items: { type: "string" } } } } }, return: { type: "object", properties: { type: { type: "string" }, content: { type: "array", items: { type: "string" } } } }, example: { type: "array", items: { type: "string" } } } } } } }}{ $schema: "https://schema.gesslar.dev/bedoc/v1/bedoc-action.json", accepts: { type: "object", required: [ functions ], properties: { functions: { type: "array", items: { type: "object", required: [ "name" ], properties: { name: { type: "string" }, description: { type: "array", items: { type: "string" } }, param: { type: "array", items: { type: "object", required: [ "name", "type" ], properties: { type: { oneOf: [ { type: "string" }, { type: "array", items: { type: "string" } } ] }, name: { type: "string" }, content: { type: "array", items: { type: "string" } } } } }, return: { type: "object", required: [ "type" ], properties: { type: { oneOf: [ { type: "string" }, { type: "array", items: { type: "string" } } ] }, content: { type: "array", items: { type: "string" } } } }, example: { type: "array", items: { type: "string" } } } } } } }}