@zowe/imperative
Version:
framework for building configurable CLIs
47 lines • 1.75 kB
TypeScript
import { IProfileProperty } from "./IProfileProperty";
/**
* The JSON Validation schema for your profile type.
* Use this to describe the expected structure and contents of your profile,
* as well as provide option definitions for create & update profile commands
*/
export interface IProfileSchema {
/**
* A short, descriptive title of your profile type
*/
title: string;
/**
* A description of your type of profile
*/
description: string;
/**
* Specify "object". This is not the type name
* of the profile, but rather a description of the type of data structure (e.g. string,
* array). Your profile will be an object with one or more properties.
*/
type: string;
/**
* These are the properties of your profile object. If your profile deals with
* information about bananas, some properties might be "color", "sweetness",
* and "origin" of type "string". For each one, you can provide an Imperative
* option definition (The same format as your normal command option definitions)
* which will be used for auto-generating profile commands.
*/
properties: {
/**
* General mapping of property name to an IProfileProperty object.
*/
[]: IProfileProperty;
};
version?: string;
/**
* An array of properties that must be present in the finished profile.
* If any of these fields are missing, profile validation will fail.
*/
required?: string[];
/**
* Any other advanced options available from the JSON schema specification
* http://json-schema.org/latest/json-schema-validation.html
*/
[]: any;
}
//# sourceMappingURL=IProfileSchema.d.ts.map