{"version":"2.0.0","commands":{"checksum":{"id":"checksum","description":"Generate a checksum for a Spot contract","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot checksum api.ts"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[{"name":"spot_contract","description":"path to Spot contract","required":true,"hidden":false}]},"docs":{"id":"docs","description":"Preview Spot contract as OpenAPI3 documentation. The documentation server will start on http://localhost:8080.","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot docs api.ts"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false},"port":{"name":"port","type":"option","char":"p","description":"Documentation server port","default":8080}},"args":[{"name":"spot_contract","description":"path to Spot contract","required":true,"hidden":false}]},"generate":{"id":"generate","description":"Runs a generator on an API. Used to produce client libraries, server boilerplates and well-known API contract formats such as OpenAPI.","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot generate --contract api.ts --language yaml --generator openapi3 --out output/"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false},"contract":{"name":"contract","type":"option","char":"c","description":"Path to a TypeScript Contract definition","required":true},"language":{"name":"language","type":"option","char":"l","description":"Language to generate"},"generator":{"name":"generator","type":"option","char":"g","description":"Generator to run"},"out":{"name":"out","type":"option","char":"o","description":"Directory in which to output generated files"}},"args":[]},"init":{"id":"init","description":"Generates the boilerplate for an API.","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot init\nGenerated the following files:\n- api.ts\n- tsconfig.json\n- package.json\n"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[]},"lint":{"id":"lint","description":"Lint a Spot contract","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot lint api.ts","$ spot lint --has-descriminator=error","$ spot lint --no-nullable-arrays=off"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false},"has-discriminator":{"name":"has-discriminator","type":"option","description":"Setting for has-discriminator","helpValue":"(error|warn|off)","options":["error","warn","off"]},"has-request-payload":{"name":"has-request-payload","type":"option","description":"Setting for has-request-payload","helpValue":"(error|warn|off)","options":["error","warn","off"]},"has-response-payload":{"name":"has-response-payload","type":"option","description":"Setting for has-response-payload","helpValue":"(error|warn|off)","options":["error","warn","off"]},"has-response":{"name":"has-response","type":"option","description":"Setting for has-response","helpValue":"(error|warn|off)","options":["error","warn","off"]},"no-inline-objects-within-unions":{"name":"no-inline-objects-within-unions","type":"option","description":"Setting for no-inline-objects-within-unions","helpValue":"(error|warn|off)","options":["error","warn","off"]},"no-nullable-arrays":{"name":"no-nullable-arrays","type":"option","description":"Setting for no-nullable-arrays","helpValue":"(error|warn|off)","options":["error","warn","off"]},"no-nullable-fields-within-request-bodies":{"name":"no-nullable-fields-within-request-bodies","type":"option","description":"Setting for no-nullable-fields-within-request-bodies","helpValue":"(error|warn|off)","options":["error","warn","off"]},"no-omittable-fields-within-response-bodies":{"name":"no-omittable-fields-within-response-bodies","type":"option","description":"Setting for no-omittable-fields-within-response-bodies","helpValue":"(error|warn|off)","options":["error","warn","off"]},"no-trailing-forward-slash":{"name":"no-trailing-forward-slash","type":"option","description":"Setting for no-trailing-forward-slash","helpValue":"(error|warn|off)","options":["error","warn","off"]}},"args":[{"name":"spot_contract","description":"path to Spot contract","required":true,"hidden":false}]},"mock":{"id":"mock","description":"Run a mock server based on a Spot contract","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot mock api.ts"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false},"proxyBaseUrl":{"name":"proxyBaseUrl","type":"option","description":"If set, the server will act as a proxy and fetch data from the given remote server instead of mocking it"},"proxyFallbackBaseUrl":{"name":"proxyFallbackBaseUrl","type":"option","description":"Like proxyBaseUrl, except used when the requested API does not match defined SPOT contract. If unset, 404 will always be returned."},"proxyMockBaseUrl":{"name":"proxyMockBaseUrl","type":"option","description":"Like proxyBaseUrl, except used to proxy draft endpoints instead of returning mocked responses."},"port":{"name":"port","type":"option","char":"p","description":"Port on which to run the mock server","required":true,"default":3010},"pathPrefix":{"name":"pathPrefix","type":"option","description":"Prefix to prepend to each endpoint path"}},"args":[{"name":"spot_contract","description":"path to Spot contract","required":true,"hidden":false}]},"validate":{"id":"validate","description":"Validate a Spot contract","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot validate api.ts"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[{"name":"spot_contract","description":"path to Spot contract","required":true,"hidden":false}]},"validation-server":{"id":"validation-server","description":"Start the spot contract validation server","pluginName":"@airtasker/spot","pluginType":"core","aliases":[],"examples":["$ spot validation-server api.ts"],"flags":{"help":{"name":"help","type":"boolean","char":"h","description":"show CLI help","allowNo":false},"port":{"name":"port","type":"option","char":"p","description":"The port where application will be available","default":5907}},"args":[{"name":"spot_contract","description":"path to Spot contract","required":true,"hidden":false}]}}}