kui-shell
Version:
This is the monorepo for Kui, the hybrid command-line/GUI electron-based Kubernetes tool
39 lines (38 loc) • 1.14 kB
TypeScript
import { UsageModel } from '../core/usage-error';
import { Disambiguator, CapabilityRequirements, CatchAllHandler } from '../models/command';
export interface PrescanNode extends CapabilityRequirements {
route: string;
usage?: UsageModel;
docs?: string;
synonyms?: string[];
synonymFor?: string;
children?: Record<string, PrescanNode>;
}
export declare type PrescanUsage = Record<string, PrescanNode>;
interface PrescanCommandDefinition {
route: string;
path: string;
}
export declare type PrescanCommandDefinitions = PrescanCommandDefinition[];
export interface PrescanDocs {
[key: string]: string;
}
export interface PrescanModel {
docs: PrescanDocs;
preloads: PrescanCommandDefinitions;
commandToPlugin: {
[key: string]: string;
};
topological: {
[key: string]: string[];
};
flat: PrescanCommandDefinitions;
overrides: {
[key: string]: string;
};
usage: PrescanUsage;
disambiguator?: Disambiguator;
catchalls: CatchAllHandler[];
}
export declare function unify(modelA: PrescanModel, modelB: PrescanModel): PrescanModel;
export {};