This release is 18 versions behind 5.0.12 — the latest version of @lost-c3/lib. Jump to latest
Lost for easy making Construct 3 Addons.
This package works with DenoIt is unknown whether this package works with Cloudflare Workers, Node.js, Bun, Browsers




JSR Score
35%
Published
4 months ago (3.3.2)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219import type { AddonType } from "../lib/config.ts"; import type { ExpressionReturnType } from "../lib/entities/expression.ts"; import type { Param } from "../lib/entities/parameter.ts"; export type AcesJSON = { [categoryId: string]: AceCategory; } export type AceCategory = { "actions": AceAction[]; "conditions": AceCondition[]; "expressions": AceExpression[]; } type AceBase = { "id": string; "isDeprecated"?: boolean; "highlight"?: boolean; "params"?: AceParameter[]; } /** Ace Action */ export type AceAction = { "scriptName": string; "isAsync"?: boolean; } & AceBase; export type AceCondition = { "scriptName": string; "isTrigger"?: boolean; "isFakeTrigger"?: boolean; "isStatic"?: boolean; "isLooping"?: boolean; "isInvertible"?: boolean; "isCompatibleWithTriggers"?: boolean; } & AceBase; export type AceExpression = { "expressionName": string; "returnType": ExpressionReturnType; "isVariadicParameters"?: boolean; } & AceBase; export type AceParameter = | AceParameterBase | AceStringParameter | AceBooleanParameter | AceComboParameter | AceObjectParameter | AceComboGroupedParameter ; type AceParameterBase = { "id": string; "type": Param; "initialValue"?: string; } export type AceStringParameter = { "type": Param.String; "autocompleteId"?: string; } & AceParameterBase export type AceBooleanParameter = { "type": Param.Boolean; "initialValue"?: 'true' | 'false'; } & AceParameterBase export type AceComboParameter = { "type": Param.Combo; "items": string[]; } & AceParameterBase export type AceObjectParameter = { "type": Param.Object; "allowedPluginIds"?: string[]; } & AceParameterBase export type AceComboGroupedParameter = { // "type": Param.ComboGrouped; // "itemGroups": { // id: string; // items: string[]; // }[]; } & AceParameterBase export type AddonJSON = { "supports-worker-mode"?: boolean; "min-construct-version"?: string; "is-c3-addon": true; "sdk-version": 2; "type": AddonType; "name": string; "id": string; "version": string; "author": string; "website": string; "documentation": string; "description": string; "editor-scripts": string[]; "file-list": string[]; }; export type LanguageJSON = { "languageTag": string; "fileDescription": string; "text": { [key in 'plugins' | 'behaviors']: { [id: string]: { "name": string; "description": string; "properties": LanguagePropertiesCollection, "help-url": string; "aceCategories": LanguageAceCategoriesCollection, "conditions": LanguageConditionsCollection, "actions": LanguageActionsCollection, "expressions": LanguageExpressionsCollection } } } } export type LanguageActionsCollection = { [id: string]: LanguageAction; } export type LanguageConditionsCollection = { [id: string]: LanguageCondition; } export type LanguageExpressionsCollection = { [id: string]: LanguageExpression; } export type LanguageAceCategoriesCollection = { [id: string]: string; } export type LanguagePropertiesCollection = { [id: string]: LanguageProperty; }; /** Plugin Property */ export type LanguageProperty = | LanguagePropertyBase | LanguageComboProperty | LanguageLinkProperty ; type LanguagePropertyBase = { "name": string; "desc": string; } export type LanguageComboProperty = { "items": { [id: string]: string; } } & LanguagePropertyBase; export type LanguageLinkProperty = { "link-text": string; } & LanguagePropertyBase /** ACEs */ export type LanguageCondition = { "list-name": string; "display-text": string; "description": string; "params"?: AceParametersCollection; } export type LanguageAction = { "list-name": string; "display-text": string; "description": string; "params"?: AceParametersCollection; } export type LanguageExpression = { "translated-name": string; "description": string; "params"?: AceParametersCollection; } /** Ace Parameter */ export type LanguageAceParameter = | LanguageAceParameterBase | LanguageAceComboParameter | LanguageAceComboGroupedParameter ; export type AceParametersCollection = { [id: string]: LanguageAceParameter } type LanguageAceParameterBase = { "name": string; "desc": string; } export type LanguageAceComboParameter = { "items": { [id: string]: string; } } & LanguageAceParameterBase; export type LanguageAceComboGroupedParameter = { "itemGroups": { [id: string]: { "name": string; "items": { [id: string]: string; } } } } & LanguageAceParameterBase