UNPKG

patchwork-mapconverter

Version:

Executable wrapper for https://github.com/ChiefOfGxBxL/WC3MapTranslator

105 lines (104 loc) 2.78 kB
interface TriggerContainer { name: string; triggers: Array<TriggerContainer | TriggerContent>; } declare class TriggerHeader implements TriggerContainer { name: string; triggers: TriggerContent[]; constructor(data: TriggerContainer); } declare class TriggerLibrary implements TriggerContainer { name: string; triggers: TriggerContent[]; constructor(data: TriggerContainer); } declare class TriggerCategory implements TriggerContainer { name: string; triggers: TriggerContent[]; constructor(data: TriggerContainer); } interface TriggerContent { name: string; } declare class GUITrigger implements TriggerContent { name: string; description: string; isEnabled: boolean; initiallyOff: boolean; runOnMapInit: boolean; events: ECA[]; conditions: ECA[]; actions: ECA[]; constructor(data: TriggerContent & GUITrigger); } declare class TriggerComment implements TriggerContent { name: string; description: string; constructor(data: TriggerContent & TriggerComment); } declare class CustomScript implements TriggerContent { name: string; description: string; isEnabled: boolean; script: string; constructor(data: TriggerContent & CustomScript, script?: string); } declare class GlobalVariable implements TriggerContent { name: string; type: string; isArray: boolean; arrayLength: number; isInitialized: boolean; initialValue: string; constructor(data: TriggerContent & GlobalVariable); } declare enum Classifier { HEADER = 1, LIBRARY = 2, CATEGORY = 4, GUI_TRIGGER = 8, COMMENT = 16, CUSTOM_SCRIPT = 32, VARIABLE = 64 } interface ECA { name: string; isEnabled: boolean; nestedAs: NestedECAClassifier | -1; children: ECA[]; parameters: Parameter[]; } interface FunctionCall { name: string; parameters: Parameter[]; } declare enum ECA_Classifier { EVENT = 0, CONDITION = 1, ACTION = 2, CALL = 3 } declare enum NestedECAClassifier { CONDITION = 0, THEN_ACTION = 1, ELSE_ACTION = 2, LOOP_ACTION = 1 } interface Parameter { type: ParameterType; value: string; nestedParams: Parameter[]; arrayIndex: number | undefined; } declare enum ParameterType { NOTHING = 0, PRESET = 1, VARIABLE = 1, FUNCTION = 2, STRING = 3 } interface TriggerTranslatorOutput { roots: TriggerContainer[]; scriptReferences: CustomScript[]; } export { type TriggerContainer, TriggerHeader, TriggerCategory, TriggerLibrary, type TriggerContent, GUITrigger, TriggerComment, CustomScript, GlobalVariable, type ECA, type FunctionCall, type Parameter, ParameterType, Classifier, ECA_Classifier, NestedECAClassifier, type TriggerTranslatorOutput };