@layer-ai/sdk 0.8.1 → 1.0.1
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/dist/client.d.ts +1 -10
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +0 -21
- package/dist/index.d.ts +1 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -3
- package/dist/types/client.d.ts +10 -0
- package/dist/types/client.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -0
- package/package.json +1 -1
- package/dist/resources/gates.d.ts +0 -82
- package/dist/resources/gates.d.ts.map +0 -1
- package/dist/resources/gates.js +0 -97
- package/dist/resources/keys.d.ts +0 -30
- package/dist/resources/keys.d.ts.map +0 -1
- package/dist/resources/keys.js +0 -46
- package/dist/resources/logs.d.ts +0 -8
- package/dist/resources/logs.d.ts.map +0 -1
- package/dist/resources/logs.js +0 -20
- package/dist/types.d.ts +0 -28
- package/dist/types.d.ts.map +0 -1
- /package/dist/{types.js → types/client.js} +0 -0
package/dist/client.d.ts
CHANGED
|
@@ -1,18 +1,9 @@
|
|
|
1
|
-
import type { LayerConfig, RequestOptions } from './types.js';
|
|
1
|
+
import type { LayerConfig, RequestOptions } from './types/index.js';
|
|
2
2
|
import type { LayerRequest, LayerResponse } from './types/index.js';
|
|
3
|
-
import { GatesResource } from './resources/gates.js';
|
|
4
|
-
import { KeysResource } from './resources/keys.js';
|
|
5
|
-
import { LogsResource } from './resources/logs.js';
|
|
6
3
|
export declare class Layer {
|
|
7
4
|
private apiKey;
|
|
8
5
|
private baseUrl;
|
|
9
|
-
private adminMode;
|
|
10
|
-
gates: GatesResource;
|
|
11
|
-
keys: KeysResource;
|
|
12
|
-
logs: LogsResource;
|
|
13
6
|
constructor(config: LayerConfig);
|
|
14
|
-
/** @internal */
|
|
15
|
-
checkAdminMode(): void;
|
|
16
7
|
request<T>(options: RequestOptions): Promise<T>;
|
|
17
8
|
complete(request: LayerRequest): Promise<LayerResponse>;
|
|
18
9
|
}
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAiB,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEnF,qBAAa,KAAK;IAChB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,MAAM,EAAE,WAAW;IAQlB,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC;IA4BtD,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC;CAkB9D"}
|
package/dist/client.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import { GatesResource } from './resources/gates.js';
|
|
2
|
-
import { KeysResource } from './resources/keys.js';
|
|
3
|
-
import { LogsResource } from './resources/logs.js';
|
|
4
1
|
export class Layer {
|
|
5
2
|
constructor(config) {
|
|
6
3
|
if (!config.apiKey) {
|
|
@@ -8,24 +5,6 @@ export class Layer {
|
|
|
8
5
|
}
|
|
9
6
|
this.apiKey = config.apiKey;
|
|
10
7
|
this.baseUrl = config.baseUrl || 'http://localhost:3001';
|
|
11
|
-
this.adminMode = config.adminMode || false;
|
|
12
|
-
this.gates = new GatesResource(this);
|
|
13
|
-
this.keys = new KeysResource(this);
|
|
14
|
-
this.logs = new LogsResource(this);
|
|
15
|
-
}
|
|
16
|
-
/** @internal */
|
|
17
|
-
checkAdminMode() {
|
|
18
|
-
if (!this.adminMode) {
|
|
19
|
-
throw new Error('This operation requires adminMode: true in Layer constructor.\n\n' +
|
|
20
|
-
'Example:\n' +
|
|
21
|
-
' const layer = new Layer({ apiKey: "...", adminMode: true });\n\n' +
|
|
22
|
-
'Admin mode is required for mutation operations:\n' +
|
|
23
|
-
' - gates.create/update/delete()\n' +
|
|
24
|
-
' - keys.create/delete()\n\n' +
|
|
25
|
-
'These methods are intended for setup scripts only.\n' +
|
|
26
|
-
'For ongoing managmenent, use CLI or config files.\n\n' +
|
|
27
|
-
'See: https://docs.uselayer.ai/sdk/admin-mode');
|
|
28
|
-
}
|
|
29
8
|
}
|
|
30
9
|
async request(options) {
|
|
31
10
|
const { method, path, body } = options;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
export { Layer } from './client.js';
|
|
2
|
-
export type { LayerConfig } from './types.js';
|
|
3
|
-
export { KeysResource } from './resources/keys.js';
|
|
4
|
-
export { GatesResource } from './resources/gates.js';
|
|
5
|
-
export { LogsResource } from './resources/logs.js';
|
|
2
|
+
export type { LayerConfig } from './types/index.js';
|
|
6
3
|
export * from './types/index.js';
|
|
7
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,YAAY,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,cAAc,kBAAkB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
1
|
export { Layer } from './client.js';
|
|
2
|
-
export { KeysResource } from './resources/keys.js';
|
|
3
|
-
export { GatesResource } from './resources/gates.js';
|
|
4
|
-
export { LogsResource } from './resources/logs.js';
|
|
5
2
|
// Re-export all types from types package
|
|
6
3
|
export * from './types/index.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/types/client.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC"}
|
package/dist/types/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import type { Layer } from '../client.js';
|
|
2
|
-
import type { Gate, CreateGateRequest, UpdateGateRequest } from '../types/index.js';
|
|
3
|
-
import type { TaskAnalysis } from '../types/index.js';
|
|
4
|
-
export declare class GatesResource {
|
|
5
|
-
private client;
|
|
6
|
-
constructor(client: Layer);
|
|
7
|
-
/**
|
|
8
|
-
* Create a new gate.
|
|
9
|
-
*
|
|
10
|
-
* Requires `adminMode: true` in Layer constructor.
|
|
11
|
-
*
|
|
12
|
-
* @throws Error if adminMode is not enabled
|
|
13
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
14
|
-
*/
|
|
15
|
-
create(data: CreateGateRequest): Promise<Gate>;
|
|
16
|
-
/**
|
|
17
|
-
* Lists all gates
|
|
18
|
-
* No admin mode required.
|
|
19
|
-
*/
|
|
20
|
-
list(): Promise<Gate[]>;
|
|
21
|
-
/**
|
|
22
|
-
* Gets a specific gate by name
|
|
23
|
-
* No admin mode required.
|
|
24
|
-
*/
|
|
25
|
-
get(name: string): Promise<Gate>;
|
|
26
|
-
/**
|
|
27
|
-
* Update an existing gate.
|
|
28
|
-
*
|
|
29
|
-
* ⚠️ Requires `adminMode: true` in Layer constructor.
|
|
30
|
-
*
|
|
31
|
-
* @throws Error if adminMode is not enabled
|
|
32
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
33
|
-
*/
|
|
34
|
-
update(name: string, data: UpdateGateRequest): Promise<Gate>;
|
|
35
|
-
/**
|
|
36
|
-
* Deletes an existing.
|
|
37
|
-
*
|
|
38
|
-
* ⚠️ Requires `adminMode: true` in Layer constructor.
|
|
39
|
-
*
|
|
40
|
-
* @throws Error if adminMode is not enabled
|
|
41
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
42
|
-
*/
|
|
43
|
-
delete(name: string): Promise<void>;
|
|
44
|
-
/**
|
|
45
|
-
* Get AI-powered model suggestions for a gate.
|
|
46
|
-
*
|
|
47
|
-
* Analyzes the gate's task description and returns suggested models
|
|
48
|
-
* with confidence scores based on the task requirements.
|
|
49
|
-
*/
|
|
50
|
-
suggestions(gateName: string): Promise<TaskAnalysis>;
|
|
51
|
-
/**
|
|
52
|
-
* Test a gate configuration with a sample request.
|
|
53
|
-
*
|
|
54
|
-
* Tests the primary model and optionally all fallback models.
|
|
55
|
-
* Can test an unsaved configuration or a saved gate with optional overrides.
|
|
56
|
-
*/
|
|
57
|
-
test(data: {
|
|
58
|
-
gateId?: string;
|
|
59
|
-
gate?: Partial<CreateGateRequest>;
|
|
60
|
-
messages: Array<{
|
|
61
|
-
role: string;
|
|
62
|
-
content: string;
|
|
63
|
-
}>;
|
|
64
|
-
quickTest?: boolean;
|
|
65
|
-
}): Promise<{
|
|
66
|
-
primary?: {
|
|
67
|
-
model: string;
|
|
68
|
-
success: boolean;
|
|
69
|
-
latency: number;
|
|
70
|
-
content?: string;
|
|
71
|
-
error?: string;
|
|
72
|
-
};
|
|
73
|
-
fallback?: Array<{
|
|
74
|
-
model: string;
|
|
75
|
-
success: boolean;
|
|
76
|
-
latency: number;
|
|
77
|
-
content?: string;
|
|
78
|
-
error?: string;
|
|
79
|
-
}>;
|
|
80
|
-
}>;
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=gates.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gates.d.ts","sourceRoot":"","sources":["../../src/resources/gates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,qBAAa,aAAa;IACZ,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,KAAK;IAEjC;;;;;;;OAOG;IACG,MAAM,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IASpD;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAO7B;;;OAGG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtC;;;;;;;OAOG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IASlE;;;;;;;OAOG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzC;;;;;OAKG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAO1D;;;;;OAKG;IACG,IAAI,CAAC,IAAI,EAAE;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAClC,QAAQ,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QACnD,SAAS,CAAC,EAAE,OAAO,CAAC;KACrB,GAAG,OAAO,CAAC;QACV,OAAO,CAAC,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QACjG,QAAQ,CAAC,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,OAAO,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC1G,CAAC;CAOH"}
|
package/dist/resources/gates.js
DELETED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
export class GatesResource {
|
|
2
|
-
constructor(client) {
|
|
3
|
-
this.client = client;
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* Create a new gate.
|
|
7
|
-
*
|
|
8
|
-
* Requires `adminMode: true` in Layer constructor.
|
|
9
|
-
*
|
|
10
|
-
* @throws Error if adminMode is not enabled
|
|
11
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
12
|
-
*/
|
|
13
|
-
async create(data) {
|
|
14
|
-
this.client.checkAdminMode();
|
|
15
|
-
return this.client.request({
|
|
16
|
-
method: 'POST',
|
|
17
|
-
path: '/v1/gates',
|
|
18
|
-
body: data,
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Lists all gates
|
|
23
|
-
* No admin mode required.
|
|
24
|
-
*/
|
|
25
|
-
async list() {
|
|
26
|
-
return this.client.request({
|
|
27
|
-
method: 'GET',
|
|
28
|
-
path: '/v1/gates',
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Gets a specific gate by name
|
|
33
|
-
* No admin mode required.
|
|
34
|
-
*/
|
|
35
|
-
async get(name) {
|
|
36
|
-
return this.client.request({
|
|
37
|
-
method: 'GET',
|
|
38
|
-
path: `/v1/gates/name/${name}`,
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* Update an existing gate.
|
|
43
|
-
*
|
|
44
|
-
* ⚠️ Requires `adminMode: true` in Layer constructor.
|
|
45
|
-
*
|
|
46
|
-
* @throws Error if adminMode is not enabled
|
|
47
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
48
|
-
*/
|
|
49
|
-
async update(name, data) {
|
|
50
|
-
this.client.checkAdminMode();
|
|
51
|
-
return this.client.request({
|
|
52
|
-
method: 'PATCH',
|
|
53
|
-
path: `/v1/gates/name/${name}`,
|
|
54
|
-
body: data,
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Deletes an existing.
|
|
59
|
-
*
|
|
60
|
-
* ⚠️ Requires `adminMode: true` in Layer constructor.
|
|
61
|
-
*
|
|
62
|
-
* @throws Error if adminMode is not enabled
|
|
63
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
64
|
-
*/
|
|
65
|
-
async delete(name) {
|
|
66
|
-
this.client.checkAdminMode();
|
|
67
|
-
await this.client.request({
|
|
68
|
-
method: 'DELETE',
|
|
69
|
-
path: `/v1/gates/name/${name}`,
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Get AI-powered model suggestions for a gate.
|
|
74
|
-
*
|
|
75
|
-
* Analyzes the gate's task description and returns suggested models
|
|
76
|
-
* with confidence scores based on the task requirements.
|
|
77
|
-
*/
|
|
78
|
-
async suggestions(gateName) {
|
|
79
|
-
return this.client.request({
|
|
80
|
-
method: 'GET',
|
|
81
|
-
path: `/v1/gates/${gateName}/suggestions`,
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Test a gate configuration with a sample request.
|
|
86
|
-
*
|
|
87
|
-
* Tests the primary model and optionally all fallback models.
|
|
88
|
-
* Can test an unsaved configuration or a saved gate with optional overrides.
|
|
89
|
-
*/
|
|
90
|
-
async test(data) {
|
|
91
|
-
return this.client.request({
|
|
92
|
-
method: 'POST',
|
|
93
|
-
path: '/v1/gates/test',
|
|
94
|
-
body: data,
|
|
95
|
-
});
|
|
96
|
-
}
|
|
97
|
-
}
|
package/dist/resources/keys.d.ts
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import type { Layer } from '../client.js';
|
|
2
|
-
import type { ApiKey, CreateKeyRequest, CreateKeyResponse } from '../types/index.js';
|
|
3
|
-
export declare class KeysResource {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Layer);
|
|
6
|
-
/**
|
|
7
|
-
* Create a new API key.
|
|
8
|
-
*
|
|
9
|
-
* Requires `adminMode: true` in Layer constructor.
|
|
10
|
-
*
|
|
11
|
-
* @throws Error if adminMode is not enabled
|
|
12
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
13
|
-
*/
|
|
14
|
-
create(data: CreateKeyRequest): Promise<CreateKeyResponse>;
|
|
15
|
-
/**
|
|
16
|
-
* List all API keys.
|
|
17
|
-
* No admin mode required.
|
|
18
|
-
*/
|
|
19
|
-
list(): Promise<ApiKey[]>;
|
|
20
|
-
/**
|
|
21
|
-
* Delete an existint key.
|
|
22
|
-
*
|
|
23
|
-
* Requires `adminMode: true` in Layer constructor.
|
|
24
|
-
*
|
|
25
|
-
* @throws Error if adminMode is not enabled
|
|
26
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
27
|
-
*/
|
|
28
|
-
delete(id: string): Promise<void>;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/resources/keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAErF,qBAAa,YAAY;IACX,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,KAAK;IAEjC;;;;;;;OAOG;IACG,MAAM,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAShE;;;OAGG;IACG,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAO9B;;;;;;;MAOE;IACG,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAOxC"}
|
package/dist/resources/keys.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
export class KeysResource {
|
|
2
|
-
constructor(client) {
|
|
3
|
-
this.client = client;
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* Create a new API key.
|
|
7
|
-
*
|
|
8
|
-
* Requires `adminMode: true` in Layer constructor.
|
|
9
|
-
*
|
|
10
|
-
* @throws Error if adminMode is not enabled
|
|
11
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
12
|
-
*/
|
|
13
|
-
async create(data) {
|
|
14
|
-
this.client.checkAdminMode();
|
|
15
|
-
return this.client.request({
|
|
16
|
-
method: 'POST',
|
|
17
|
-
path: '/v1/keys',
|
|
18
|
-
body: data,
|
|
19
|
-
});
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* List all API keys.
|
|
23
|
-
* No admin mode required.
|
|
24
|
-
*/
|
|
25
|
-
async list() {
|
|
26
|
-
return this.client.request({
|
|
27
|
-
method: 'GET',
|
|
28
|
-
path: '/v1/keys',
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* Delete an existint key.
|
|
33
|
-
*
|
|
34
|
-
* Requires `adminMode: true` in Layer constructor.
|
|
35
|
-
*
|
|
36
|
-
* @throws Error if adminMode is not enabled
|
|
37
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
38
|
-
*/
|
|
39
|
-
async delete(id) {
|
|
40
|
-
this.client.checkAdminMode();
|
|
41
|
-
await this.client.request({
|
|
42
|
-
method: 'DELETE',
|
|
43
|
-
path: `/v1/keys/${id}`,
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
}
|
package/dist/resources/logs.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import type { Layer } from '../client.js';
|
|
2
|
-
import type { Log, ListLogOptions } from '../types/index.js';
|
|
3
|
-
export declare class LogsResource {
|
|
4
|
-
private client;
|
|
5
|
-
constructor(client: Layer);
|
|
6
|
-
list(options?: ListLogOptions): Promise<Log[]>;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=logs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/resources/logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAG7D,qBAAa,YAAY;IACX,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,KAAK;IAE3B,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;CAcrD"}
|
package/dist/resources/logs.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
export class LogsResource {
|
|
2
|
-
constructor(client) {
|
|
3
|
-
this.client = client;
|
|
4
|
-
}
|
|
5
|
-
async list(options) {
|
|
6
|
-
const params = new URLSearchParams();
|
|
7
|
-
if (options?.limit)
|
|
8
|
-
params.set('limit', options.limit.toString());
|
|
9
|
-
if (options?.gate)
|
|
10
|
-
params.set('gate', options.gate);
|
|
11
|
-
if (options?.offset)
|
|
12
|
-
params.set('offset', options.offset.toString());
|
|
13
|
-
const query = params.toString();
|
|
14
|
-
const path = query ? `/v1/logs?${query}` : '/v1/logs';
|
|
15
|
-
return this.client.request({
|
|
16
|
-
method: 'GET',
|
|
17
|
-
path
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
}
|
package/dist/types.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export interface LayerConfig {
|
|
2
|
-
apiKey: string;
|
|
3
|
-
baseUrl?: string;
|
|
4
|
-
/**
|
|
5
|
-
* Enable admin mode for mutation operations.
|
|
6
|
-
*
|
|
7
|
-
* WARNING: Only set to true in setup scripts and IaC (infrastructure as code), and not in runtime code.
|
|
8
|
-
*
|
|
9
|
-
* Admin mode enables:
|
|
10
|
-
* - layer.gates.create/udpate/delete()
|
|
11
|
-
* - layer.keys.create/delete()
|
|
12
|
-
*
|
|
13
|
-
* Read operations are always available without admin mode:
|
|
14
|
-
* - layer.gates.list/get()
|
|
15
|
-
* - layer.keys.list()
|
|
16
|
-
* - layer.complete()
|
|
17
|
-
*
|
|
18
|
-
* @default false
|
|
19
|
-
* @see https://docs.uselayer.ai/sdk/admin-mode
|
|
20
|
-
*/
|
|
21
|
-
adminMode?: boolean;
|
|
22
|
-
}
|
|
23
|
-
export interface RequestOptions {
|
|
24
|
-
method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
25
|
-
path: string;
|
|
26
|
-
body?: unknown;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;;;;;;;;OAgBG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB"}
|
|
File without changes
|