60 lines
1.7 KiB
TypeScript
60 lines
1.7 KiB
TypeScript
declare module 'js-yaml-loader!*' {
|
|
export interface CollectionData {
|
|
readonly os: string;
|
|
readonly scripting: ScriptingDefinitionData;
|
|
readonly actions: ReadonlyArray<CategoryData>;
|
|
readonly functions?: ReadonlyArray<FunctionData>;
|
|
}
|
|
|
|
export interface CategoryData extends DocumentableData {
|
|
readonly children: ReadonlyArray<CategoryOrScriptData>;
|
|
readonly category: string;
|
|
}
|
|
|
|
export type CategoryOrScriptData = CategoryData | ScriptData;
|
|
export type DocumentationUrlsData = ReadonlyArray<string> | string;
|
|
|
|
export interface DocumentableData {
|
|
readonly docs?: DocumentationUrlsData;
|
|
}
|
|
|
|
export interface InstructionHolder {
|
|
readonly name: string;
|
|
|
|
readonly code?: string;
|
|
readonly revertCode?: string;
|
|
|
|
readonly call?: ScriptFunctionCallData;
|
|
}
|
|
|
|
export interface FunctionData extends InstructionHolder {
|
|
readonly parameters?: readonly string[];
|
|
}
|
|
|
|
export interface FunctionCallParametersData {
|
|
readonly [index: string]: string;
|
|
}
|
|
|
|
export interface FunctionCallData {
|
|
readonly function: string;
|
|
readonly parameters?: FunctionCallParametersData;
|
|
}
|
|
|
|
export type ScriptFunctionCallData = readonly FunctionCallData[] | FunctionCallData | undefined;
|
|
|
|
export interface ScriptData extends InstructionHolder, DocumentableData {
|
|
readonly name: string;
|
|
readonly recommend?: string;
|
|
}
|
|
|
|
export interface ScriptingDefinitionData {
|
|
readonly language: string;
|
|
readonly fileExtension: string;
|
|
readonly startCode: string;
|
|
readonly endCode: string;
|
|
}
|
|
|
|
const content: CollectionData;
|
|
export default content;
|
|
}
|