eny-ai 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +18 -0
- package/README.md +740 -0
- package/dist/chunk-2WFUL4XJ.js +2476 -0
- package/dist/chunk-E4KJZEXX.js +274 -0
- package/dist/chunk-PNKVD2UK.js +26 -0
- package/dist/cli.cjs +2453 -0
- package/dist/cli.d.cts +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.js +100 -0
- package/dist/index.cjs +3235 -0
- package/dist/index.d.cts +704 -0
- package/dist/index.d.ts +704 -0
- package/dist/index.js +495 -0
- package/dist/react/index.cjs +342 -0
- package/dist/react/index.d.cts +751 -0
- package/dist/react/index.d.ts +751 -0
- package/dist/react/index.js +284 -0
- package/dist/symbols.cjs +324 -0
- package/dist/symbols.d.cts +584 -0
- package/dist/symbols.d.ts +584 -0
- package/dist/symbols.js +61 -0
- package/examples/README.md +13 -0
- package/examples/ia-demo.eny +37 -0
- package/examples/sample.eny +15 -0
- package/examples/simple/system.eny +7 -0
- package/examples/spec/sample.eny +19 -0
- package/examples/starter/README.md +96 -0
- package/examples/starter/main.eny +39 -0
- package/examples/starter/run.js +68 -0
- package/examples/starter.eny +16 -0
- package/examples/wasm-demo.eny +34 -0
- package/master.mid.ai +540 -0
- package/package.json +71 -0
package/dist/index.d.cts
ADDED
|
@@ -0,0 +1,704 @@
|
|
|
1
|
+
export { ALPHABET, FALSE, NIL, SYMBOLS, TRANSPILE_MAP, TRUE, VOID, asyncFn, component, effect, error, filter, find, fn, get, log, map, navigate, post, reduce, shape, state, storageGet, storageSet, toSymbolic, transpileSymbols, validate } from './symbols.cjs';
|
|
2
|
+
|
|
3
|
+
type Step = {
|
|
4
|
+
raw: string;
|
|
5
|
+
};
|
|
6
|
+
type FunctionNode = {
|
|
7
|
+
type: 'function';
|
|
8
|
+
name: string;
|
|
9
|
+
args?: string[];
|
|
10
|
+
steps: Step[];
|
|
11
|
+
optimized?: boolean;
|
|
12
|
+
};
|
|
13
|
+
type IANode = {
|
|
14
|
+
type: 'ia';
|
|
15
|
+
name: string;
|
|
16
|
+
body: string[];
|
|
17
|
+
};
|
|
18
|
+
type ModuleNode = {
|
|
19
|
+
type: 'module';
|
|
20
|
+
name: string;
|
|
21
|
+
};
|
|
22
|
+
type ObjectNode = {
|
|
23
|
+
type: 'object';
|
|
24
|
+
name: string;
|
|
25
|
+
props: Record<string, string | null>;
|
|
26
|
+
};
|
|
27
|
+
type FormNode = {
|
|
28
|
+
type: 'form';
|
|
29
|
+
name: string;
|
|
30
|
+
props: Record<string, any>;
|
|
31
|
+
};
|
|
32
|
+
type AnimationNode = {
|
|
33
|
+
type: 'animation';
|
|
34
|
+
name: string;
|
|
35
|
+
props: Record<string, any>;
|
|
36
|
+
};
|
|
37
|
+
type LogicNode = {
|
|
38
|
+
type: 'logic';
|
|
39
|
+
rule: string;
|
|
40
|
+
trueFlow?: string[];
|
|
41
|
+
falseFlow?: string[];
|
|
42
|
+
};
|
|
43
|
+
type ParallelNode = {
|
|
44
|
+
type: 'parallel';
|
|
45
|
+
items: string[];
|
|
46
|
+
};
|
|
47
|
+
type BuildNode = {
|
|
48
|
+
type: 'build';
|
|
49
|
+
targets: string[];
|
|
50
|
+
};
|
|
51
|
+
type EvolveNode = {
|
|
52
|
+
type: 'evolve';
|
|
53
|
+
steps: string[];
|
|
54
|
+
};
|
|
55
|
+
/** σ SUBSTATE - Estado local/contexto específico */
|
|
56
|
+
type SubstateNode = {
|
|
57
|
+
type: 'substate';
|
|
58
|
+
name: string;
|
|
59
|
+
parent?: string;
|
|
60
|
+
props: Record<string, any>;
|
|
61
|
+
};
|
|
62
|
+
/** ○ CLASS - Classe/molde estrutural */
|
|
63
|
+
type ClassNode = {
|
|
64
|
+
type: 'class';
|
|
65
|
+
name: string;
|
|
66
|
+
extends?: string;
|
|
67
|
+
props: Record<string, any>;
|
|
68
|
+
methods?: string[];
|
|
69
|
+
};
|
|
70
|
+
/** ↻ LOOP - Repetição/continuidade */
|
|
71
|
+
type LoopNode = {
|
|
72
|
+
type: 'loop';
|
|
73
|
+
name?: string;
|
|
74
|
+
condition?: string;
|
|
75
|
+
count?: number;
|
|
76
|
+
body: string[];
|
|
77
|
+
};
|
|
78
|
+
/** ◌ EVENT - Evento/acontecimento */
|
|
79
|
+
type EventNode = {
|
|
80
|
+
type: 'event';
|
|
81
|
+
name: string;
|
|
82
|
+
trigger?: string;
|
|
83
|
+
handler?: string[];
|
|
84
|
+
};
|
|
85
|
+
/** ⇄ SYNC - Sincronização/comunicação */
|
|
86
|
+
type SyncNode = {
|
|
87
|
+
type: 'sync';
|
|
88
|
+
sources: string[];
|
|
89
|
+
target?: string;
|
|
90
|
+
};
|
|
91
|
+
/** ⌛ TIMEOUT - Limite temporal */
|
|
92
|
+
type TimeoutNode = {
|
|
93
|
+
type: 'timeout';
|
|
94
|
+
duration: number;
|
|
95
|
+
unit?: 'ms' | 's' | 'm';
|
|
96
|
+
action?: string;
|
|
97
|
+
};
|
|
98
|
+
/** ⏳ DELAY - Espera/atraso temporal */
|
|
99
|
+
type DelayNode = {
|
|
100
|
+
type: 'delay';
|
|
101
|
+
duration: number;
|
|
102
|
+
unit?: 'ms' | 's' | 'm';
|
|
103
|
+
};
|
|
104
|
+
/** 🛡 SECURITY - Segurança/proteção */
|
|
105
|
+
type SecurityNode = {
|
|
106
|
+
type: 'security';
|
|
107
|
+
level?: 'low' | 'medium' | 'high' | 'critical';
|
|
108
|
+
rules: string[];
|
|
109
|
+
};
|
|
110
|
+
/** 🔑 KEY - Chave/autorização */
|
|
111
|
+
type KeyNode = {
|
|
112
|
+
type: 'key';
|
|
113
|
+
name: string;
|
|
114
|
+
scope?: string;
|
|
115
|
+
permissions?: string[];
|
|
116
|
+
};
|
|
117
|
+
/** 🧪 SANDBOX - Isolamento/execução segura */
|
|
118
|
+
type SandboxNode = {
|
|
119
|
+
type: 'sandbox';
|
|
120
|
+
name: string;
|
|
121
|
+
restrictions?: string[];
|
|
122
|
+
body: string[];
|
|
123
|
+
};
|
|
124
|
+
/** ⚡ CAUSE - Causa/origem de evento */
|
|
125
|
+
type CauseNode = {
|
|
126
|
+
type: 'cause';
|
|
127
|
+
trigger: string;
|
|
128
|
+
effects: string[];
|
|
129
|
+
};
|
|
130
|
+
/** ✦ CONSEQUENCE - Consequência/resultado */
|
|
131
|
+
type ConsequenceNode = {
|
|
132
|
+
type: 'consequence';
|
|
133
|
+
source: string;
|
|
134
|
+
result: string;
|
|
135
|
+
};
|
|
136
|
+
/** 𝓜 MEMORY - Memória/retenção de informação */
|
|
137
|
+
type MemoryNode = {
|
|
138
|
+
type: 'memory';
|
|
139
|
+
name: string;
|
|
140
|
+
size?: number;
|
|
141
|
+
persist?: boolean;
|
|
142
|
+
};
|
|
143
|
+
/** ♾ PERSIST - Persistência */
|
|
144
|
+
type PersistNode = {
|
|
145
|
+
type: 'persist';
|
|
146
|
+
target: string;
|
|
147
|
+
storage?: 'local' | 'session' | 'db' | 'file';
|
|
148
|
+
};
|
|
149
|
+
/** ⌂ ROOT - Raiz do sistema */
|
|
150
|
+
type RootNode = {
|
|
151
|
+
type: 'root';
|
|
152
|
+
name: string;
|
|
153
|
+
children?: string[];
|
|
154
|
+
};
|
|
155
|
+
/** ☐ INTERFACE - Interface/contato humano */
|
|
156
|
+
type InterfaceNode = {
|
|
157
|
+
type: 'interface';
|
|
158
|
+
name: string;
|
|
159
|
+
methods: string[];
|
|
160
|
+
};
|
|
161
|
+
/** 👁 VISUAL - Visual/percepção */
|
|
162
|
+
type VisualNode = {
|
|
163
|
+
type: 'visual';
|
|
164
|
+
name: string;
|
|
165
|
+
props: Record<string, any>;
|
|
166
|
+
};
|
|
167
|
+
/** ⌨ INPUT - Entrada/intenção do usuário */
|
|
168
|
+
type InputNode = {
|
|
169
|
+
type: 'input';
|
|
170
|
+
name: string;
|
|
171
|
+
inputType?: 'text' | 'number' | 'file' | 'event';
|
|
172
|
+
handler?: string;
|
|
173
|
+
};
|
|
174
|
+
/** ⏬ THROTTLE - Limitar/controle de uso */
|
|
175
|
+
type ThrottleNode = {
|
|
176
|
+
type: 'throttle';
|
|
177
|
+
target: string;
|
|
178
|
+
limit: number;
|
|
179
|
+
window?: number;
|
|
180
|
+
};
|
|
181
|
+
/** ⏫ BOOST - Acelerar/aumento de performance */
|
|
182
|
+
type BoostNode = {
|
|
183
|
+
type: 'boost';
|
|
184
|
+
target: string;
|
|
185
|
+
factor?: number;
|
|
186
|
+
};
|
|
187
|
+
/** ₵ COST - Custo/gasto de recurso */
|
|
188
|
+
type CostNode = {
|
|
189
|
+
type: 'cost';
|
|
190
|
+
operation: string;
|
|
191
|
+
value: number;
|
|
192
|
+
unit?: string;
|
|
193
|
+
};
|
|
194
|
+
/** 🔒 LOCK - Imutável/estado protegido */
|
|
195
|
+
type LockNode = {
|
|
196
|
+
type: 'lock';
|
|
197
|
+
target: string;
|
|
198
|
+
reason?: string;
|
|
199
|
+
};
|
|
200
|
+
/** 🔓 UNLOCK - Mutável/estado liberado */
|
|
201
|
+
type UnlockNode = {
|
|
202
|
+
type: 'unlock';
|
|
203
|
+
target: string;
|
|
204
|
+
};
|
|
205
|
+
/** Ø VOID - Não-existência/null absoluto */
|
|
206
|
+
type VoidNode = {
|
|
207
|
+
type: 'void';
|
|
208
|
+
target?: string;
|
|
209
|
+
};
|
|
210
|
+
/** ⬒ INHERIT - Herança/extensão */
|
|
211
|
+
type InheritNode = {
|
|
212
|
+
type: 'inherit';
|
|
213
|
+
child: string;
|
|
214
|
+
parent: string;
|
|
215
|
+
};
|
|
216
|
+
/** ⊃ CONTAINS - Contém/composição */
|
|
217
|
+
type ContainsNode = {
|
|
218
|
+
type: 'contains';
|
|
219
|
+
container: string;
|
|
220
|
+
items: string[];
|
|
221
|
+
};
|
|
222
|
+
/** ✔ VERIFY - Verificar/validação */
|
|
223
|
+
type VerifyNode = {
|
|
224
|
+
type: 'verify';
|
|
225
|
+
target: string;
|
|
226
|
+
rules?: string[];
|
|
227
|
+
};
|
|
228
|
+
/** 📜 LOG - Registro/memória histórica */
|
|
229
|
+
type LogNode = {
|
|
230
|
+
type: 'log';
|
|
231
|
+
message: string;
|
|
232
|
+
level?: 'debug' | 'info' | 'warn' | 'error';
|
|
233
|
+
};
|
|
234
|
+
/** Σ KERNEL - Conexão com kernel/sistema */
|
|
235
|
+
type KernelNode = {
|
|
236
|
+
type: 'kernel';
|
|
237
|
+
hooks: string[];
|
|
238
|
+
};
|
|
239
|
+
/** Σ DATABASE - Banco de dados auto-gerenciado */
|
|
240
|
+
type DatabaseNode = {
|
|
241
|
+
type: 'database';
|
|
242
|
+
mode: 'auto' | 'manual' | 'hybrid';
|
|
243
|
+
provider?: string;
|
|
244
|
+
};
|
|
245
|
+
/** Σ TRAINING - Modo treino/gamificado */
|
|
246
|
+
type TrainingNode = {
|
|
247
|
+
type: 'training';
|
|
248
|
+
topic: string;
|
|
249
|
+
level?: number;
|
|
250
|
+
};
|
|
251
|
+
type LogEntry = {
|
|
252
|
+
timestamp: string;
|
|
253
|
+
level: 'info' | 'debug' | 'warn' | 'error';
|
|
254
|
+
event: string;
|
|
255
|
+
i?: number;
|
|
256
|
+
line?: string;
|
|
257
|
+
detail?: any;
|
|
258
|
+
};
|
|
259
|
+
type ParseOptions = {
|
|
260
|
+
verbose?: boolean;
|
|
261
|
+
onLog?: (entry: LogEntry) => void;
|
|
262
|
+
logFile?: string;
|
|
263
|
+
logRetryAttempts?: number;
|
|
264
|
+
logRetryDelayMs?: number;
|
|
265
|
+
};
|
|
266
|
+
type EnyAST = {
|
|
267
|
+
system?: string | null;
|
|
268
|
+
version?: string | null;
|
|
269
|
+
mode?: string | null;
|
|
270
|
+
targets?: string[];
|
|
271
|
+
ui?: string | null;
|
|
272
|
+
database?: DatabaseNode | null;
|
|
273
|
+
kernel?: KernelNode | null;
|
|
274
|
+
training?: TrainingNode | null;
|
|
275
|
+
modules?: ModuleNode[];
|
|
276
|
+
functions?: FunctionNode[];
|
|
277
|
+
ias?: IANode[];
|
|
278
|
+
objects?: ObjectNode[];
|
|
279
|
+
forms?: FormNode[];
|
|
280
|
+
animations?: AnimationNode[];
|
|
281
|
+
logic?: LogicNode[];
|
|
282
|
+
parallels?: ParallelNode[];
|
|
283
|
+
build?: BuildNode | null;
|
|
284
|
+
evolve?: EvolveNode | null;
|
|
285
|
+
substates?: SubstateNode[];
|
|
286
|
+
classes?: ClassNode[];
|
|
287
|
+
loops?: LoopNode[];
|
|
288
|
+
events?: EventNode[];
|
|
289
|
+
syncs?: SyncNode[];
|
|
290
|
+
timeouts?: TimeoutNode[];
|
|
291
|
+
delays?: DelayNode[];
|
|
292
|
+
securities?: SecurityNode[];
|
|
293
|
+
keys?: KeyNode[];
|
|
294
|
+
sandboxes?: SandboxNode[];
|
|
295
|
+
causes?: CauseNode[];
|
|
296
|
+
consequences?: ConsequenceNode[];
|
|
297
|
+
memories?: MemoryNode[];
|
|
298
|
+
persists?: PersistNode[];
|
|
299
|
+
roots?: RootNode[];
|
|
300
|
+
interfaces?: InterfaceNode[];
|
|
301
|
+
visuals?: VisualNode[];
|
|
302
|
+
inputs?: InputNode[];
|
|
303
|
+
throttles?: ThrottleNode[];
|
|
304
|
+
boosts?: BoostNode[];
|
|
305
|
+
costs?: CostNode[];
|
|
306
|
+
locks?: LockNode[];
|
|
307
|
+
unlocks?: UnlockNode[];
|
|
308
|
+
voids?: VoidNode[];
|
|
309
|
+
inherits?: InheritNode[];
|
|
310
|
+
contains?: ContainsNode[];
|
|
311
|
+
verifies?: VerifyNode[];
|
|
312
|
+
logNodes?: LogNode[];
|
|
313
|
+
raw?: string;
|
|
314
|
+
isEny?: boolean;
|
|
315
|
+
logs?: LogEntry[];
|
|
316
|
+
errors?: string[];
|
|
317
|
+
nodes?: Array<FunctionNode | IANode | ModuleNode | ObjectNode | FormNode | AnimationNode | LogicNode | ParallelNode | BuildNode | EvolveNode | SubstateNode | ClassNode | LoopNode | EventNode | SyncNode | TimeoutNode | DelayNode | SecurityNode | KeyNode | SandboxNode | CauseNode | ConsequenceNode | MemoryNode | PersistNode | RootNode | InterfaceNode | VisualNode | InputNode | ThrottleNode | BoostNode | CostNode | LockNode | UnlockNode | VoidNode | InheritNode | ContainsNode | VerifyNode | LogNode | KernelNode | DatabaseNode | TrainingNode | {
|
|
318
|
+
type: string;
|
|
319
|
+
[k: string]: any;
|
|
320
|
+
}>;
|
|
321
|
+
};
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* runENY: wrapper that returns a parsed AST. Fast-fails if no `Σ SYSTEM` is found
|
|
325
|
+
*/
|
|
326
|
+
declare function runENY(code: string, options?: ParseOptions): EnyAST;
|
|
327
|
+
|
|
328
|
+
declare function parse(code: string, options?: ParseOptions): EnyAST;
|
|
329
|
+
|
|
330
|
+
declare enum TokenType {
|
|
331
|
+
SYMBOL = "SYMBOL",
|
|
332
|
+
IDENTIFIER = "IDENTIFIER",
|
|
333
|
+
STRING = "STRING",
|
|
334
|
+
NUMBER = "NUMBER",
|
|
335
|
+
ARROW = "ARROW",
|
|
336
|
+
LBRACE = "LBRACE",
|
|
337
|
+
RBRACE = "RBRACE",
|
|
338
|
+
COLON = "COLON",
|
|
339
|
+
COMMA = "COMMA",
|
|
340
|
+
LPAREN = "LPAREN",
|
|
341
|
+
RPAREN = "RPAREN",
|
|
342
|
+
LBRACKET = "LBRACKET",
|
|
343
|
+
RBRACKET = "RBRACKET",
|
|
344
|
+
NEWLINE = "NEWLINE",
|
|
345
|
+
COMPARATOR = "COMPARATOR",
|
|
346
|
+
OPERATOR = "OPERATOR",
|
|
347
|
+
EOF = "EOF"
|
|
348
|
+
}
|
|
349
|
+
interface Token {
|
|
350
|
+
type: TokenType;
|
|
351
|
+
value: string;
|
|
352
|
+
pos: number;
|
|
353
|
+
}
|
|
354
|
+
declare const SYMBOL_NAMES: Record<string, string>;
|
|
355
|
+
declare function tokenize(input: string): Token[];
|
|
356
|
+
|
|
357
|
+
interface TranspileOptions {
|
|
358
|
+
emitTypes?: boolean;
|
|
359
|
+
moduleFormat?: 'esm' | 'cjs';
|
|
360
|
+
}
|
|
361
|
+
declare function transpileToJS(ast: EnyAST, options?: TranspileOptions): string;
|
|
362
|
+
/**
|
|
363
|
+
* Generate TypeScript declaration (.d.ts) content for the AST
|
|
364
|
+
*/
|
|
365
|
+
declare function transpileToDTS(ast: EnyAST): string;
|
|
366
|
+
/**
|
|
367
|
+
* Generate WebAssembly Text Format (.wat) stub for the AST
|
|
368
|
+
* This is a placeholder for future WASM compilation
|
|
369
|
+
*/
|
|
370
|
+
declare function transpileToWAT(ast: EnyAST): string;
|
|
371
|
+
/**
|
|
372
|
+
* Check if WASM target is requested in build configuration
|
|
373
|
+
*/
|
|
374
|
+
declare function hasWASMTarget(ast: EnyAST): boolean;
|
|
375
|
+
|
|
376
|
+
/**
|
|
377
|
+
* IAProvider interface - base for all IA implementations
|
|
378
|
+
*/
|
|
379
|
+
interface IAProvider {
|
|
380
|
+
name: string;
|
|
381
|
+
/**
|
|
382
|
+
* Process an IA block and return a response
|
|
383
|
+
*/
|
|
384
|
+
process(ia: IANode, context?: IAContext): Promise<IAResponse>;
|
|
385
|
+
/**
|
|
386
|
+
* Check if the provider is available/ready
|
|
387
|
+
*/
|
|
388
|
+
isAvailable(): Promise<boolean>;
|
|
389
|
+
}
|
|
390
|
+
interface IAContext {
|
|
391
|
+
systemName?: string;
|
|
392
|
+
mode?: string;
|
|
393
|
+
onLog?: (entry: LogEntry) => void;
|
|
394
|
+
}
|
|
395
|
+
interface IAResponse {
|
|
396
|
+
success: boolean;
|
|
397
|
+
result?: any;
|
|
398
|
+
error?: string;
|
|
399
|
+
capabilities?: string[];
|
|
400
|
+
}
|
|
401
|
+
/**
|
|
402
|
+
* LocalIA - Mock implementation for testing and development
|
|
403
|
+
* Simulates IA behavior without external dependencies
|
|
404
|
+
*/
|
|
405
|
+
declare class LocalIA implements IAProvider {
|
|
406
|
+
name: string;
|
|
407
|
+
private capabilities;
|
|
408
|
+
constructor();
|
|
409
|
+
isAvailable(): Promise<boolean>;
|
|
410
|
+
process(ia: IANode, context?: IAContext): Promise<IAResponse>;
|
|
411
|
+
/**
|
|
412
|
+
* Register a custom capability handler
|
|
413
|
+
*/
|
|
414
|
+
registerCapability(name: string, handler: () => any): void;
|
|
415
|
+
}
|
|
416
|
+
/**
|
|
417
|
+
* RemoteIA - Stub for future remote IA service integration
|
|
418
|
+
*/
|
|
419
|
+
declare class RemoteIA implements IAProvider {
|
|
420
|
+
name: string;
|
|
421
|
+
private endpoint;
|
|
422
|
+
private apiKey?;
|
|
423
|
+
constructor(endpoint: string, apiKey?: string);
|
|
424
|
+
isAvailable(): Promise<boolean>;
|
|
425
|
+
process(ia: IANode, context?: IAContext): Promise<IAResponse>;
|
|
426
|
+
}
|
|
427
|
+
/**
|
|
428
|
+
* IAManager - Manages IA providers and routes requests
|
|
429
|
+
*/
|
|
430
|
+
declare class IAManager {
|
|
431
|
+
private providers;
|
|
432
|
+
private defaultProvider;
|
|
433
|
+
constructor(defaultProvider?: IAProvider);
|
|
434
|
+
registerProvider(provider: IAProvider): void;
|
|
435
|
+
getProvider(name?: string): IAProvider;
|
|
436
|
+
processIA(ia: IANode, context?: IAContext, providerName?: string): Promise<IAResponse>;
|
|
437
|
+
}
|
|
438
|
+
declare const defaultIAManager: IAManager;
|
|
439
|
+
/**
|
|
440
|
+
* Convenience function to process IA blocks
|
|
441
|
+
*/
|
|
442
|
+
declare function processIA(ia: IANode, context?: IAContext, provider?: IAProvider): Promise<IAResponse>;
|
|
443
|
+
|
|
444
|
+
/**
|
|
445
|
+
* 🧬 SISTEMA DE EVOLUÇÃO AI-ENY
|
|
446
|
+
*
|
|
447
|
+
* O sistema de evolução permite transformações automáticas no AST.
|
|
448
|
+
* Comandos suportados:
|
|
449
|
+
*
|
|
450
|
+
* - rename <old> <new> : Renomeia função
|
|
451
|
+
* - optimize <fn> : Marca função para otimização
|
|
452
|
+
* - inline <fn> : Marca função para inlining
|
|
453
|
+
* - memoize <fn> : Adiciona memoização
|
|
454
|
+
* - parallelize <fn> : Marca para execução paralela
|
|
455
|
+
* - deprecate <fn> : Marca como deprecated
|
|
456
|
+
* - secure <fn> : Adiciona validações de segurança
|
|
457
|
+
* - cache <object> : Ativa cache para objeto
|
|
458
|
+
* - throttle <fn> <limit> : Adiciona throttling
|
|
459
|
+
* - observe <target> : Adiciona observabilidade
|
|
460
|
+
*/
|
|
461
|
+
interface EvolveResult {
|
|
462
|
+
changed: boolean;
|
|
463
|
+
appliedSteps: string[];
|
|
464
|
+
skippedSteps: string[];
|
|
465
|
+
}
|
|
466
|
+
declare function applyEvolve(ast: EnyAST, options?: {
|
|
467
|
+
onLog?: (e: LogEntry) => void;
|
|
468
|
+
}): EvolveResult;
|
|
469
|
+
|
|
470
|
+
/**
|
|
471
|
+
* 🧬 VALIDAÇÃO SEMÂNTICA DOS 9 PILARES AI-ENY
|
|
472
|
+
*
|
|
473
|
+
* Σ ESTADO - Valida consistência de estados
|
|
474
|
+
* ƒ AÇÃO - Valida funções e referências
|
|
475
|
+
* ■ FORMA - Valida objetos e estruturas
|
|
476
|
+
* ⚡ TEMPO - Valida eventos e causalidade
|
|
477
|
+
* Ψ ENERGIA - Valida recursos e limites
|
|
478
|
+
* 𝓜 MEMÓRIA - Valida persistência e cache
|
|
479
|
+
* ☐ INTERFACE - Valida UI e inputs
|
|
480
|
+
* 🛡 SEGURANÇA - Valida regras de proteção
|
|
481
|
+
* ⟳ EVOLUÇÃO - Valida passos de evolução
|
|
482
|
+
*/
|
|
483
|
+
interface ValidationResult {
|
|
484
|
+
errors: string[];
|
|
485
|
+
warnings: string[];
|
|
486
|
+
pillars: {
|
|
487
|
+
state: boolean;
|
|
488
|
+
action: boolean;
|
|
489
|
+
form: boolean;
|
|
490
|
+
time: boolean;
|
|
491
|
+
energy: boolean;
|
|
492
|
+
memory: boolean;
|
|
493
|
+
interface: boolean;
|
|
494
|
+
security: boolean;
|
|
495
|
+
evolve: boolean;
|
|
496
|
+
};
|
|
497
|
+
score: number;
|
|
498
|
+
}
|
|
499
|
+
declare function validateSemantic(ast: EnyAST, options?: ParseOptions): string[];
|
|
500
|
+
declare function validateSemanticFull(ast: EnyAST, options?: ParseOptions): ValidationResult;
|
|
501
|
+
|
|
502
|
+
/**
|
|
503
|
+
* Cria um sistema AI-ENY básico
|
|
504
|
+
*/
|
|
505
|
+
declare function createSystem(config: {
|
|
506
|
+
name: string;
|
|
507
|
+
mode?: 'development' | 'production' | 'autonomous';
|
|
508
|
+
ui?: 'auto' | 'minimal' | 'adaptive' | 'none';
|
|
509
|
+
evolve?: boolean;
|
|
510
|
+
targets?: string[];
|
|
511
|
+
}): string;
|
|
512
|
+
/**
|
|
513
|
+
* Obtém o estado atual de um AST
|
|
514
|
+
*/
|
|
515
|
+
declare function getState(ast: EnyAST): {
|
|
516
|
+
system: string | null | undefined;
|
|
517
|
+
mode: string | null | undefined;
|
|
518
|
+
ui: string | null | undefined;
|
|
519
|
+
version: string | null | undefined;
|
|
520
|
+
isEny: boolean | undefined;
|
|
521
|
+
substates: SubstateNode[];
|
|
522
|
+
};
|
|
523
|
+
/**
|
|
524
|
+
* Cria uma função AI-ENY
|
|
525
|
+
*/
|
|
526
|
+
declare function createFunction(name: string, args: string[], steps: string[]): string;
|
|
527
|
+
/**
|
|
528
|
+
* Obtém todas as funções do AST
|
|
529
|
+
*/
|
|
530
|
+
declare function getFunctions(ast: EnyAST): FunctionNode[];
|
|
531
|
+
/**
|
|
532
|
+
* Cria um objeto AI-ENY
|
|
533
|
+
*/
|
|
534
|
+
declare function createObject(name: string, props: Record<string, any>): string;
|
|
535
|
+
/**
|
|
536
|
+
* Cria uma classe AI-ENY
|
|
537
|
+
*/
|
|
538
|
+
declare function createClass(name: string, props: Record<string, any>, methods?: string[], extendsClass?: string): string;
|
|
539
|
+
/**
|
|
540
|
+
* Obtém todas as estruturas (objetos, classes) do AST
|
|
541
|
+
*/
|
|
542
|
+
declare function getStructures(ast: EnyAST): {
|
|
543
|
+
objects: ObjectNode[];
|
|
544
|
+
classes: ClassNode[];
|
|
545
|
+
modules: ModuleNode[];
|
|
546
|
+
};
|
|
547
|
+
/**
|
|
548
|
+
* Cria um evento AI-ENY
|
|
549
|
+
*/
|
|
550
|
+
declare function createEvent(name: string, handlers: string[]): string;
|
|
551
|
+
/**
|
|
552
|
+
* Cria um loop AI-ENY
|
|
553
|
+
*/
|
|
554
|
+
declare function createLoop(count: number, body: string[]): string;
|
|
555
|
+
/**
|
|
556
|
+
* Obtém todos os elementos temporais
|
|
557
|
+
*/
|
|
558
|
+
declare function getTemporals(ast: EnyAST): {
|
|
559
|
+
events: EventNode[];
|
|
560
|
+
loops: LoopNode[];
|
|
561
|
+
causes: CauseNode[];
|
|
562
|
+
timeouts: TimeoutNode[];
|
|
563
|
+
delays: DelayNode[];
|
|
564
|
+
syncs: SyncNode[];
|
|
565
|
+
};
|
|
566
|
+
/**
|
|
567
|
+
* Cria um throttle AI-ENY
|
|
568
|
+
*/
|
|
569
|
+
declare function createThrottle(target: string, limit: number): string;
|
|
570
|
+
/**
|
|
571
|
+
* Cria um boost AI-ENY
|
|
572
|
+
*/
|
|
573
|
+
declare function createBoost(target: string, factor: number): string;
|
|
574
|
+
/**
|
|
575
|
+
* Obtém informações de energia/recursos
|
|
576
|
+
*/
|
|
577
|
+
declare function getEnergy(ast: EnyAST): {
|
|
578
|
+
throttles: ThrottleNode[];
|
|
579
|
+
boosts: BoostNode[];
|
|
580
|
+
costs: CostNode[];
|
|
581
|
+
};
|
|
582
|
+
/**
|
|
583
|
+
* Cria uma memória AI-ENY
|
|
584
|
+
*/
|
|
585
|
+
declare function createMemory(name: string, size: number, persist?: boolean): string;
|
|
586
|
+
/**
|
|
587
|
+
* Cria persistência AI-ENY
|
|
588
|
+
*/
|
|
589
|
+
declare function createPersist(target: string, storage?: 'db' | 'file' | 'cache'): string;
|
|
590
|
+
/**
|
|
591
|
+
* Obtém informações de memória
|
|
592
|
+
*/
|
|
593
|
+
declare function getMemory(ast: EnyAST): {
|
|
594
|
+
database: DatabaseNode | null | undefined;
|
|
595
|
+
memories: MemoryNode[];
|
|
596
|
+
persists: PersistNode[];
|
|
597
|
+
};
|
|
598
|
+
/**
|
|
599
|
+
* Cria um input AI-ENY
|
|
600
|
+
*/
|
|
601
|
+
declare function createInput(name: string, type?: 'text' | 'number' | 'email' | 'password'): string;
|
|
602
|
+
/**
|
|
603
|
+
* Cria um visual AI-ENY
|
|
604
|
+
*/
|
|
605
|
+
declare function createVisual(name: string, props: Record<string, any>): string;
|
|
606
|
+
/**
|
|
607
|
+
* Obtém informações de interface
|
|
608
|
+
*/
|
|
609
|
+
declare function getInterface(ast: EnyAST): {
|
|
610
|
+
forms: FormNode[];
|
|
611
|
+
inputs: InputNode[];
|
|
612
|
+
visuals: VisualNode[];
|
|
613
|
+
interfaces: InterfaceNode[];
|
|
614
|
+
};
|
|
615
|
+
/**
|
|
616
|
+
* Cria uma regra de segurança AI-ENY
|
|
617
|
+
*/
|
|
618
|
+
declare function createSecurity(level: 'low' | 'medium' | 'high' | 'critical', rules: string[]): string;
|
|
619
|
+
/**
|
|
620
|
+
* Cria uma chave AI-ENY
|
|
621
|
+
*/
|
|
622
|
+
declare function createKey(name: string, permissions: string[]): string;
|
|
623
|
+
/**
|
|
624
|
+
* Obtém informações de segurança
|
|
625
|
+
*/
|
|
626
|
+
declare function getSecurity(ast: EnyAST): {
|
|
627
|
+
securities: SecurityNode[];
|
|
628
|
+
keys: KeyNode[];
|
|
629
|
+
sandboxes: SandboxNode[];
|
|
630
|
+
locks: LockNode[];
|
|
631
|
+
unlocks: UnlockNode[];
|
|
632
|
+
};
|
|
633
|
+
/**
|
|
634
|
+
* Cria um bloco de evolução AI-ENY
|
|
635
|
+
*/
|
|
636
|
+
declare function createEvolve(steps: string[]): string;
|
|
637
|
+
/**
|
|
638
|
+
* Obtém informações de evolução
|
|
639
|
+
*/
|
|
640
|
+
declare function getEvolve(ast: EnyAST): {
|
|
641
|
+
evolve: EvolveNode | null | undefined;
|
|
642
|
+
verifies: VerifyNode[];
|
|
643
|
+
logNodes: LogNode[];
|
|
644
|
+
};
|
|
645
|
+
/**
|
|
646
|
+
* Gera código AI-ENY completo a partir de configuração
|
|
647
|
+
*/
|
|
648
|
+
declare function generateENY(config: {
|
|
649
|
+
system: {
|
|
650
|
+
name: string;
|
|
651
|
+
mode?: string;
|
|
652
|
+
ui?: string;
|
|
653
|
+
};
|
|
654
|
+
functions?: Array<{
|
|
655
|
+
name: string;
|
|
656
|
+
args?: string[];
|
|
657
|
+
steps: string[];
|
|
658
|
+
}>;
|
|
659
|
+
objects?: Array<{
|
|
660
|
+
name: string;
|
|
661
|
+
props: Record<string, any>;
|
|
662
|
+
}>;
|
|
663
|
+
events?: Array<{
|
|
664
|
+
name: string;
|
|
665
|
+
handlers: string[];
|
|
666
|
+
}>;
|
|
667
|
+
security?: {
|
|
668
|
+
level: string;
|
|
669
|
+
rules: string[];
|
|
670
|
+
};
|
|
671
|
+
evolve?: string[];
|
|
672
|
+
}): string;
|
|
673
|
+
|
|
674
|
+
/**
|
|
675
|
+
* ENY-AI Core Library
|
|
676
|
+
* Biblioteca Universal de Sistemas Autogeráveis
|
|
677
|
+
* Código 90% Simbólico baseado no Alfabeto AI-X
|
|
678
|
+
*/
|
|
679
|
+
|
|
680
|
+
declare const VERSION = "1.0.0";
|
|
681
|
+
declare const NAME = "eny-ai";
|
|
682
|
+
declare const STATE: unique symbol;
|
|
683
|
+
declare const SUBSTATE: unique symbol;
|
|
684
|
+
declare const VOID_VAL: null;
|
|
685
|
+
declare const TRUE_VAL = true;
|
|
686
|
+
declare const FALSE_VAL = false;
|
|
687
|
+
declare const OBJECT: unique symbol;
|
|
688
|
+
declare const FUNCTION: unique symbol;
|
|
689
|
+
declare const INTERFACE: unique symbol;
|
|
690
|
+
declare const SHIELD: unique symbol;
|
|
691
|
+
declare const EVOLVE: unique symbol;
|
|
692
|
+
|
|
693
|
+
/** Cria um sistema ENY rápido */
|
|
694
|
+
declare function quickSystem(name: string, config?: {
|
|
695
|
+
mode?: 'development' | 'production' | 'autonomous';
|
|
696
|
+
ui?: 'auto' | 'adaptive' | 'minimal';
|
|
697
|
+
evolve?: boolean;
|
|
698
|
+
}): string;
|
|
699
|
+
/** Executa código ENY e retorna JavaScript transpilado */
|
|
700
|
+
declare function compile(enyCode: string): string;
|
|
701
|
+
/** Verifica se código é válido ENY */
|
|
702
|
+
declare function isValidENY(code: string): boolean;
|
|
703
|
+
|
|
704
|
+
export { type AnimationNode, type BoostNode, type BuildNode, type CauseNode, type ClassNode, type ConsequenceNode, type ContainsNode, type CostNode, type DatabaseNode, type DelayNode, EVOLVE, type EnyAST, type EventNode, type EvolveNode, type EvolveResult, FALSE_VAL, FUNCTION, type FormNode, type FunctionNode, type IAContext, IAManager, type IANode, type IAProvider, type IAResponse, INTERFACE, type InheritNode, type InputNode, type InterfaceNode, type KernelNode, type KeyNode, LocalIA, type LockNode, type LogEntry, type LogNode, type LogicNode, type LoopNode, type MemoryNode, type ModuleNode, NAME, OBJECT, type ObjectNode, type ParallelNode, type ParseOptions, type PersistNode, RemoteIA, type RootNode, SHIELD, STATE, SUBSTATE, SYMBOL_NAMES, type SandboxNode, type SecurityNode, type Step, type SubstateNode, type SyncNode, TRUE_VAL, type ThrottleNode, type TimeoutNode, type Token, TokenType, type TrainingNode, type TranspileOptions, type UnlockNode, VERSION, VOID_VAL, type ValidationResult, type VerifyNode, type VisualNode, type VoidNode, applyEvolve, compile, createBoost, createClass, createEvent, createEvolve, createFunction, createInput, createKey, createLoop, createMemory, createObject, createPersist, createSecurity, createSystem, createThrottle, createVisual, defaultIAManager, generateENY, getEnergy, getEvolve, getFunctions, getInterface, getMemory, getSecurity, getState, getStructures, getTemporals, hasWASMTarget, isValidENY, parse, processIA, quickSystem, runENY, tokenize, transpileToDTS, transpileToJS, transpileToWAT, validateSemantic, validateSemanticFull };
|