-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.d.ts
78 lines (66 loc) · 3.7 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
// Type definitions for eh-api-client 0.24.0
// Project: https://github.com/calibr/eh-api-client
// Definitions by: Rusinov Maxim <https://github.com/rusmaxim>
interface OptionsObj extends Record<string, unknown> {
url?: string | [string, ...unknown[]];
}
export type Options = OptionsObj | string | [string, ...unknown[]]
export type Callback<T extends any> = (err: unknown, data: T, res: unknown, req: unknown) => void
export interface Client {
fork(subUrl: string): Client;
request<T extends any>(method: string, options: Options, cb?: Callback<T> ): Promise<T>;
request<T extends any>(method: string, options: Options, body: unknown, cb?: Callback<T> ): Promise<T>;
exists(url: string, cb?: Callback<boolean>): Promise<boolean>;
exists(url: string, options: Options, cb?: Callback<boolean>): Promise<boolean>;
get<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
get<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
post<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
post<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
put<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
put<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
head<T extends any>(options: Options, cb?: Callback<unknown>): Promise<unknown>;
patch<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
patch<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
delete<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
setSessionId(sessionId: string): void;
setRequestId(requestId: string): void;
setDeviceId(deviceId: string): void;
addRequestModificator(modificator: (params: Record<string, unknown>) => Record<string, unknown>): void;
setHeaders(headers: Record<string, string>): void;
setAuthBearerToken(token: string): void
prototype: Client;
apiURL: string;
}
export interface RetryOptions {
maxAttempts?: number;
retryDelay?: number;
retryStrategy?: (err: unknown, params: Record<string, unknown>) => boolean;
}
declare class APIFactory {
Client: { new ():Client };
secret: string | null
constructor(apiURL: string);
getClientByContext(context: unknown): Client;
setRetryOptions(options: RetryOptions): void;
setAgentOptions(options: Record<string, unknown>): void;
setSecret(secret: string): void;
exists(cb?: Callback<boolean>): Promise<boolean>;
exists(options: Options, cb?: Callback<boolean>): Promise<boolean>;
getClient(userId: number, app: string, token?: string): Client;
getClientWithAuthBearerToken(token: string): Client;
getRawClient(): Client;
get<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
post<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
post<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
put<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
put<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
head<T extends any>(options: Options, cb?: Callback<unknown>): Promise<unknown>;
patch<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
patch<T extends any>(options: Options, body: unknown, cb?: Callback<T>): Promise<T>;
delete<T extends any>(options: Options, cb?: Callback<T>): Promise<T>;
static on(event: string, cb: (...args: unknown[]) => unknown): void
static setAsyncLocalStorage(asyncLocalStorage): void
static getFromStore(property: string): string
static setClientProperties(client: Client, contenxt: unknown): void
}
export default APIFactory