Skip to content

Commit b66259f

Browse files
committed
Update typings
1 parent 52bdb3f commit b66259f

4 files changed

Lines changed: 51 additions & 5 deletions

File tree

types/config.d.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,12 @@ export interface ServerConfig {
4949
};
5050
}
5151

52+
export interface CacheConfig {
53+
size: string;
54+
maxFileSize: string;
55+
avoid?: Array<string>;
56+
}
57+
5258
export interface SessionsConfig {
5359
sid: string;
5460
characters: string;

types/core.d.ts

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { EventEmitter } from 'node:events';
2+
import { IncomingMessage, ServerResponse } from 'node:http';
23

34
export interface Task {
45
name: string;
@@ -16,34 +17,63 @@ export interface Scheduler {
1617
export interface InvokeTarget {
1718
method: string;
1819
args: object;
20+
exclusive?: boolean;
1921
}
2022

2123
export interface Static {
22-
get(name: string): unknown;
24+
name: string;
25+
path: string;
26+
files: Map<string, { data: Buffer | null; stat: object | null }>;
27+
get(name: string): { data: Buffer | null; stat: object | null } | undefined;
28+
find(
29+
path: string,
30+
code?: number,
31+
): { data: Buffer | null; stat: object | null; code: number };
32+
serve(url: string, transport: object): Promise<void>;
33+
load(targetPath?: string): Promise<void>;
34+
delete(filePath: string): void;
35+
change(filePath: string): Promise<void>;
2336
}
2437

2538
export interface Schemas {
39+
model: object;
2640
get(name: string): unknown;
41+
load(targetPath?: string): Promise<void>;
42+
delete(filePath: string): void;
43+
change(filePath: string): Promise<void>;
2744
}
2845

2946
export interface Listener {
3047
(...args: Array<unknown>): void;
3148
}
3249

50+
export interface Context {
51+
client: Client;
52+
token?: string;
53+
session?: object;
54+
}
55+
56+
export interface Client {
57+
ip: string;
58+
session?: object;
59+
emit(name: string, data: object): void;
60+
}
61+
3362
export interface Application extends EventEmitter {
3463
worker: { id: string };
3564
server: { host: string; port: number; protocol: string };
3665
resources: Static;
3766
schemas: Schemas;
3867
scheduler: Scheduler;
39-
introspect: () => Promise<object>;
68+
mode: string;
69+
introspect: (units: Array<string>) => Promise<object>;
4070
invoke: (target: InvokeTarget) => Promise<unknown>;
4171
on(event: 'loading', listener: Listener): this;
4272
once(event: 'loading', listener: Listener): this;
4373
on(event: 'loaded', listener: Listener): this;
4474
once(event: 'loaded', listener: Listener): this;
4575
on(event: 'started', listener: Listener): this;
4676
once(event: 'started', listener: Listener): this;
47-
on(event: 'initialized', listener: Listener): this;
48-
once(event: 'initialized', listener: Listener): this;
77+
on(event: 'ready', listener: Listener): this;
78+
once(event: 'ready', listener: Listener): this;
4979
}

types/impress.d.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
1-
import { LogConfig, ScaleConfig, ServerConfig, SessionsConfig } from './config';
1+
import {
2+
LogConfig,
3+
ScaleConfig,
4+
ServerConfig,
5+
SessionsConfig,
6+
CacheConfig,
7+
} from './config';
28
import { Application, Context, Client } from './core';
39

410
import * as _util from 'node:util';
@@ -50,6 +56,7 @@ declare global {
5056
const scale: ScaleConfig;
5157
const server: ServerConfig;
5258
const sessions: SessionsConfig;
59+
const cache: CacheConfig;
5360
}
5461

5562
namespace metarhia {

types/procedure.d.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,4 +36,7 @@ interface Procedure {
3636
deprecated?: boolean;
3737
assert?: Function;
3838
examples?: Array<Example>;
39+
invoke(context: object, args?: object): Promise<unknown>;
40+
enter(): Promise<void>;
41+
leave(): void;
3942
}

0 commit comments

Comments
 (0)