Microsoft.PowerShell.Crescendo.Schema.json
{
"title": "JSON schema for Powershell Crescendo files", "type": "object", "properties": { "$schema": { "required":true, "type": ["string"] }, "Verb": { "required": true, "type": [ "string" ], "enum": [ "Add","Approve","Assert", "Backup","Block","Build", "Checkpoint","Clear","Close","Compare","Complete","Compress","Confirm","Connect","Convert","ConvertFrom","ConvertTo","Copy", "Debug","Deny","Deploy","Disable","Disconnect","Dismount", "Edit","Enable","Enter","Exit","Expand","Export", "Find","Format", "Get","Grant","Group", "Hide", "Import","Initialize","Install","Invoke", "Join", "Limit","Lock", "Measure","Merge","Mount","Move", "New", "Open","Optimize","Out", "Ping","Pop","Protect","Publish","Push", "Read","Receive","Redo","Register","Remove","Rename","Repair","Request","Reset","Resize","Resolve","Restart","Restore","Resume","Revoke", "Save","Search","Select","Send","Set","Show","Skip","Split","Start","Step","Stop","Submit","Suspend","Switch","Sync", "Test","Trace", "Unblock","Undo","Uninstall","Unlock","Unprotect","Unpublish","Unregister","Update","Use", "Wait","Watch","Write" ], "description" : "The verb of the cmdlet" }, "Noun": { "required": true, "type": [ "string" ], "description" : "The noun of the cmdlet" }, "OriginalName": { "required": true, "type": [ "string" ], "description" : "The native command to be called by the function." }, "OutputHandlers": { "required": false, "type": "array", "items": { "type": "object", "properties": { "ParameterSetName": { "required": true, "type": "string", "description": "The name of the parameter set which will use the handler" }, "Handler": { "required": true, "type": "string", "description": "This is the code which converts the output to objects" }, "StreamOutput": { "required": false, "type": "boolean", "description": "When used, output will be piped as a stream to the output handler." } } } }, "OriginalCommandElements": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "string" ] }, "description": "Additional elements to be added to the invocation. This is for arguments provided to a Native application which are not part of the parameters." }, "Aliases": { "required": false, "type": [ "array" ], "description" : "Aliases to the function that will be created", "items": { "type": [ "string" ] } }, "DefaultParameterSetName": { "required": false, "type": [ "string" ], "description": "The default parameter set name for the function" }, "SupportsShouldProcess": { "required": false, "type": "boolean" }, "SupportsTransactions": { "required": false, "type": "boolean" }, "Description": { "required": false, "type": [ "string", "null" ] }, "Usage": { "required": false, "type": [ "object" ], "properties": { "Synopsis": { "required": true, "type": [ "string" ] }, "SupportsFlags": { "required": false, "type": "boolean" }, "HasOptions": { "required": false, "type": "boolean" }, "OriginalText": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "string" ] }, "description": "The original text for the command help. Usually generated by command -?" } } }, "Parameters": { "required": false, "type": [ "array", "null" ], "description": "The parameters for the function.", "items": { "type": [ "object", "null" ], "properties": { "ParameterType": { "required": true, "type": [ "string" ], "description": "This the type of the parameter. It should represent an actual type." }, "Position": { "required": false, "type": "integer", "description": "The position of the parameter." }, "Name": { "required": true, "type": [ "string" ] }, "OriginalName": { "required": true, "type": [ "string", "null" ] }, "OriginalText": { "required": false, "type": [ "string", "null" ] }, "Description": { "required": false, "type": [ "string", "null" ] }, "DefaultValue": { "required": false, "type": [ "string", "object", "null" ], "properties": {} }, "DefaultMissingValue": { "required": false, "type": [ "object", "null" ], "properties": {} }, "AdditionalParameterAttributes": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "string", "null" ] } }, "Mandatory": { "required": false, "type": "boolean" }, "ParameterSetName": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "string", "null" ] } }, "Aliases": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "string", "null" ] } }, "OriginalPosition": { "required": false, "type": "integer" }, "ValueFromPipeline": { "required": false, "type": "boolean" }, "NoGap": { "required":false, "type": "boolean" }, "ValueFromPipelineByPropertyName": { "required": false, "type": "boolean" }, "ValueFromRemainingArguments": { "required": false, "type": "boolean" } } } }, "Examples": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "object", "null" ], "properties": { "Command": { "required": true, "type": [ "string", "null" ] }, "OriginalCommand": { "required": false, "type": [ "string", "null" ] }, "Description": { "required": true, "type": [ "string", "null" ] } } } }, "OriginalText": { "required": false, "type": [ "string", "null" ] }, "HelpLinks": { "required": false, "type": [ "array", "null" ], "items": { "type": [ "string", "null" ] } }, "NoInvocation": { "type":"boolean", "required": false, "description": "This option returns the arguments which would be sent to the native executable. If used, the native application will not be invoked." } }, "required" : ["Verb","Noun","OriginalName"], "additionalProperties": false } |