@grantex/sdk 0.1.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/dist/client.d.ts +33 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +61 -0
- package/dist/client.js.map +1 -0
- package/dist/errors.d.ts +20 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +45 -0
- package/dist/errors.js.map +1 -0
- package/dist/http.d.ts +15 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +94 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/resources/agents.d.ts +12 -0
- package/dist/resources/agents.d.ts.map +1 -0
- package/dist/resources/agents.js +22 -0
- package/dist/resources/agents.js.map +1 -0
- package/dist/resources/anomalies.d.ts +15 -0
- package/dist/resources/anomalies.d.ts.map +1 -0
- package/dist/resources/anomalies.js +20 -0
- package/dist/resources/anomalies.js.map +1 -0
- package/dist/resources/audit.d.ts +10 -0
- package/dist/resources/audit.d.ts.map +1 -0
- package/dist/resources/audit.js +28 -0
- package/dist/resources/audit.js.map +1 -0
- package/dist/resources/billing.d.ts +13 -0
- package/dist/resources/billing.d.ts.map +1 -0
- package/dist/resources/billing.js +19 -0
- package/dist/resources/billing.js.map +1 -0
- package/dist/resources/compliance.d.ts +18 -0
- package/dist/resources/compliance.d.ts.map +1 -0
- package/dist/resources/compliance.js +47 -0
- package/dist/resources/compliance.js.map +1 -0
- package/dist/resources/grants.d.ts +25 -0
- package/dist/resources/grants.d.ts.map +1 -0
- package/dist/resources/grants.js +46 -0
- package/dist/resources/grants.js.map +1 -0
- package/dist/resources/policies.d.ts +17 -0
- package/dist/resources/policies.d.ts.map +1 -0
- package/dist/resources/policies.js +27 -0
- package/dist/resources/policies.js.map +1 -0
- package/dist/resources/scim.d.ts +33 -0
- package/dist/resources/scim.d.ts.map +1 -0
- package/dist/resources/scim.js +51 -0
- package/dist/resources/scim.js.map +1 -0
- package/dist/resources/sso.d.ts +23 -0
- package/dist/resources/sso.d.ts.map +1 -0
- package/dist/resources/sso.js +33 -0
- package/dist/resources/sso.js.map +1 -0
- package/dist/resources/tokens.d.ts +9 -0
- package/dist/resources/tokens.d.ts.map +1 -0
- package/dist/resources/tokens.js +15 -0
- package/dist/resources/tokens.js.map +1 -0
- package/dist/resources/webhooks.d.ts +10 -0
- package/dist/resources/webhooks.d.ts.map +1 -0
- package/dist/resources/webhooks.js +16 -0
- package/dist/resources/webhooks.js.map +1 -0
- package/dist/types.d.ts +440 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/verify.d.ts +17 -0
- package/dist/verify.d.ts.map +1 -0
- package/dist/verify.js +80 -0
- package/dist/verify.js.map +1 -0
- package/dist/webhook.d.ts +10 -0
- package/dist/webhook.d.ts.map +1 -0
- package/dist/webhook.js +19 -0
- package/dist/webhook.js.map +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { mapOnlineVerifyToVerifiedGrant } from '../verify.js';
|
|
2
|
+
export class GrantsClient {
|
|
3
|
+
#http;
|
|
4
|
+
constructor(http) {
|
|
5
|
+
this.#http = http;
|
|
6
|
+
}
|
|
7
|
+
get(grantId) {
|
|
8
|
+
return this.#http.get(`/v1/grants/${grantId}`);
|
|
9
|
+
}
|
|
10
|
+
list(params) {
|
|
11
|
+
const query = buildQuery(params);
|
|
12
|
+
const path = query ? `/v1/grants?${query}` : '/v1/grants';
|
|
13
|
+
return this.#http.get(path);
|
|
14
|
+
}
|
|
15
|
+
revoke(grantId) {
|
|
16
|
+
return this.#http.delete(`/v1/grants/${grantId}`);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Create a delegated sub-agent grant (SPEC §9).
|
|
20
|
+
*/
|
|
21
|
+
delegate(params) {
|
|
22
|
+
return this.#http.post('/v1/grants/delegate', params);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Verify a grant token via the API (online verification).
|
|
26
|
+
* Returns a clean VerifiedGrant shape by decoding the raw token returned
|
|
27
|
+
* from the server to fill fields the summary response may omit.
|
|
28
|
+
*/
|
|
29
|
+
async verify(token) {
|
|
30
|
+
const response = await this.#http.post('/v1/grants/verify', { token });
|
|
31
|
+
// The API may echo back the raw token; decode it to guarantee all fields.
|
|
32
|
+
const rawToken = response.token ?? token;
|
|
33
|
+
return mapOnlineVerifyToVerifiedGrant(rawToken);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
function buildQuery(params) {
|
|
37
|
+
if (!params)
|
|
38
|
+
return '';
|
|
39
|
+
const entries = Object.entries(params).filter(([, v]) => v !== undefined && v !== null);
|
|
40
|
+
if (entries.length === 0)
|
|
41
|
+
return '';
|
|
42
|
+
return entries
|
|
43
|
+
.map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(String(v))}`)
|
|
44
|
+
.join('&');
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=grants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grants.js","sourceRoot":"","sources":["../../src/resources/grants.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAS9D,MAAM,OAAO,YAAY;IACd,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,OAAe;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAQ,cAAc,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,MAAyB;QAC5B,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QAC1D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAqB,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,OAAe;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,cAAc,OAAO,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAsB;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,KAAa;QACxB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CACpC,mBAAmB,EACnB,EAAE,KAAK,EAAE,CACV,CAAC;QACF,0EAA0E;QAC1E,MAAM,QAAQ,GAAW,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC;QACjD,OAAO,8BAA8B,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;CACF;AAED,SAAS,UAAU,CAAC,MAAyB;IAC3C,IAAI,CAAC,MAAM;QAAE,OAAO,EAAE,CAAC;IACvB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAC3C,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CACL,CAAC;IACtC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO,OAAO;SACX,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5E,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { HttpClient } from '../http.js';
|
|
2
|
+
import type { CreatePolicyParams, ListPoliciesResponse, Policy, UpdatePolicyParams } from '../types.js';
|
|
3
|
+
export declare class PoliciesClient {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
/** Create a new policy. */
|
|
7
|
+
create(params: CreatePolicyParams): Promise<Policy>;
|
|
8
|
+
/** List all policies for the authenticated developer. */
|
|
9
|
+
list(): Promise<ListPoliciesResponse>;
|
|
10
|
+
/** Get a single policy by ID. */
|
|
11
|
+
get(policyId: string): Promise<Policy>;
|
|
12
|
+
/** Update a policy. */
|
|
13
|
+
update(policyId: string, params: UpdatePolicyParams): Promise<Policy>;
|
|
14
|
+
/** Delete a policy. */
|
|
15
|
+
delete(policyId: string): Promise<void>;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=policies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policies.d.ts","sourceRoot":"","sources":["../../src/resources/policies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,kBAAkB,EAClB,oBAAoB,EACpB,MAAM,EACN,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAErB,qBAAa,cAAc;;gBAGb,IAAI,EAAE,UAAU;IAI5B,2BAA2B;IAC3B,MAAM,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAInD,yDAAyD;IACzD,IAAI,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIrC,iCAAiC;IACjC,GAAG,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAItC,uBAAuB;IACvB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAIrE,uBAAuB;IACvB,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGxC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export class PoliciesClient {
|
|
2
|
+
#http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.#http = http;
|
|
5
|
+
}
|
|
6
|
+
/** Create a new policy. */
|
|
7
|
+
create(params) {
|
|
8
|
+
return this.#http.post('/v1/policies', params);
|
|
9
|
+
}
|
|
10
|
+
/** List all policies for the authenticated developer. */
|
|
11
|
+
list() {
|
|
12
|
+
return this.#http.get('/v1/policies');
|
|
13
|
+
}
|
|
14
|
+
/** Get a single policy by ID. */
|
|
15
|
+
get(policyId) {
|
|
16
|
+
return this.#http.get(`/v1/policies/${policyId}`);
|
|
17
|
+
}
|
|
18
|
+
/** Update a policy. */
|
|
19
|
+
update(policyId, params) {
|
|
20
|
+
return this.#http.patch(`/v1/policies/${policyId}`, params);
|
|
21
|
+
}
|
|
22
|
+
/** Delete a policy. */
|
|
23
|
+
delete(policyId) {
|
|
24
|
+
return this.#http.delete(`/v1/policies/${policyId}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=policies.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/resources/policies.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,cAAc;IAChB,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,2BAA2B;IAC3B,MAAM,CAAC,MAA0B;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAS,cAAc,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAED,yDAAyD;IACzD,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAuB,cAAc,CAAC,CAAC;IAC9D,CAAC;IAED,iCAAiC;IACjC,GAAG,CAAC,QAAgB;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAS,gBAAgB,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,uBAAuB;IACvB,MAAM,CAAC,QAAgB,EAAE,MAA0B;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAS,gBAAgB,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,uBAAuB;IACvB,MAAM,CAAC,QAAgB;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,gBAAgB,QAAQ,EAAE,CAAC,CAAC;IAC7D,CAAC;CACF"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { HttpClient } from '../http.js';
|
|
2
|
+
import type { ScimTokenWithSecret, CreateScimTokenParams, ListScimTokensResponse, ScimUser, ScimListResponse, CreateScimUserParams, UpdateScimUserParams } from '../types.js';
|
|
3
|
+
export declare class ScimClient {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
/** Create a new SCIM bearer token. The raw token is returned once only. */
|
|
7
|
+
createToken(params: CreateScimTokenParams): Promise<ScimTokenWithSecret>;
|
|
8
|
+
/** List all SCIM tokens for this developer org (without raw secrets). */
|
|
9
|
+
listTokens(): Promise<ListScimTokensResponse>;
|
|
10
|
+
/** Revoke a SCIM token by ID. */
|
|
11
|
+
revokeToken(tokenId: string): Promise<void>;
|
|
12
|
+
/** List provisioned users (SCIM 2.0 ListResponse). */
|
|
13
|
+
listUsers(params?: {
|
|
14
|
+
startIndex?: number;
|
|
15
|
+
count?: number;
|
|
16
|
+
}): Promise<ScimListResponse>;
|
|
17
|
+
/** Get a single provisioned user by ID. */
|
|
18
|
+
getUser(userId: string): Promise<ScimUser>;
|
|
19
|
+
/** Provision a new user. */
|
|
20
|
+
createUser(params: CreateScimUserParams): Promise<ScimUser>;
|
|
21
|
+
/** Full replace of a user (PUT). */
|
|
22
|
+
replaceUser(userId: string, params: CreateScimUserParams): Promise<ScimUser>;
|
|
23
|
+
/** Partial update via SCIM Operations (PATCH). */
|
|
24
|
+
updateUser(userId: string, operations: Array<{
|
|
25
|
+
op: string;
|
|
26
|
+
path?: string;
|
|
27
|
+
value: unknown;
|
|
28
|
+
}>): Promise<ScimUser>;
|
|
29
|
+
/** Deprovision a user (DELETE). */
|
|
30
|
+
deleteUser(userId: string): Promise<void>;
|
|
31
|
+
}
|
|
32
|
+
export type { UpdateScimUserParams };
|
|
33
|
+
//# sourceMappingURL=scim.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scim.d.ts","sourceRoot":"","sources":["../../src/resources/scim.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAEV,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,QAAQ,EACR,gBAAgB,EAChB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AAErB,qBAAa,UAAU;;gBAGT,IAAI,EAAE,UAAU;IAM5B,2EAA2E;IAC3E,WAAW,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAIxE,yEAAyE;IACzE,UAAU,IAAI,OAAO,CAAC,sBAAsB,CAAC;IAI7C,iCAAiC;IACjC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAM3C,sDAAsD;IACtD,SAAS,CAAC,MAAM,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQtF,2CAA2C;IAC3C,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI1C,4BAA4B;IAC5B,UAAU,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI3D,oCAAoC;IACpC,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI5E,kDAAkD;IAClD,UAAU,CACR,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,GAC/D,OAAO,CAAC,QAAQ,CAAC;IAIpB,mCAAmC;IACnC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C;AAGD,YAAY,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
export class ScimClient {
|
|
2
|
+
#http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.#http = http;
|
|
5
|
+
}
|
|
6
|
+
// ── SCIM token management ─────────────────────────────────────────────
|
|
7
|
+
/** Create a new SCIM bearer token. The raw token is returned once only. */
|
|
8
|
+
createToken(params) {
|
|
9
|
+
return this.#http.post('/v1/scim/tokens', params);
|
|
10
|
+
}
|
|
11
|
+
/** List all SCIM tokens for this developer org (without raw secrets). */
|
|
12
|
+
listTokens() {
|
|
13
|
+
return this.#http.get('/v1/scim/tokens');
|
|
14
|
+
}
|
|
15
|
+
/** Revoke a SCIM token by ID. */
|
|
16
|
+
revokeToken(tokenId) {
|
|
17
|
+
return this.#http.delete(`/v1/scim/tokens/${tokenId}`);
|
|
18
|
+
}
|
|
19
|
+
// ── SCIM 2.0 Users ────────────────────────────────────────────────────
|
|
20
|
+
/** List provisioned users (SCIM 2.0 ListResponse). */
|
|
21
|
+
listUsers(params) {
|
|
22
|
+
const qs = new URLSearchParams();
|
|
23
|
+
if (params?.startIndex !== undefined)
|
|
24
|
+
qs.set('startIndex', String(params.startIndex));
|
|
25
|
+
if (params?.count !== undefined)
|
|
26
|
+
qs.set('count', String(params.count));
|
|
27
|
+
const query = qs.toString();
|
|
28
|
+
return this.#http.get(query ? `/scim/v2/Users?${query}` : '/scim/v2/Users');
|
|
29
|
+
}
|
|
30
|
+
/** Get a single provisioned user by ID. */
|
|
31
|
+
getUser(userId) {
|
|
32
|
+
return this.#http.get(`/scim/v2/Users/${userId}`);
|
|
33
|
+
}
|
|
34
|
+
/** Provision a new user. */
|
|
35
|
+
createUser(params) {
|
|
36
|
+
return this.#http.post('/scim/v2/Users', params);
|
|
37
|
+
}
|
|
38
|
+
/** Full replace of a user (PUT). */
|
|
39
|
+
replaceUser(userId, params) {
|
|
40
|
+
return this.#http.put(`/scim/v2/Users/${userId}`, params);
|
|
41
|
+
}
|
|
42
|
+
/** Partial update via SCIM Operations (PATCH). */
|
|
43
|
+
updateUser(userId, operations) {
|
|
44
|
+
return this.#http.patch(`/scim/v2/Users/${userId}`, { Operations: operations });
|
|
45
|
+
}
|
|
46
|
+
/** Deprovision a user (DELETE). */
|
|
47
|
+
deleteUser(userId) {
|
|
48
|
+
return this.#http.delete(`/scim/v2/Users/${userId}`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=scim.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scim.js","sourceRoot":"","sources":["../../src/resources/scim.ts"],"names":[],"mappings":"AAYA,MAAM,OAAO,UAAU;IACZ,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,yEAAyE;IAEzE,2EAA2E;IAC3E,WAAW,CAAC,MAA6B;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAsB,iBAAiB,EAAE,MAAM,CAAC,CAAC;IACzE,CAAC;IAED,yEAAyE;IACzE,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,iBAAiB,CAAC,CAAC;IACnE,CAAC;IAED,iCAAiC;IACjC,WAAW,CAAC,OAAe;QACzB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,mBAAmB,OAAO,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,yEAAyE;IAEzE,sDAAsD;IACtD,SAAS,CAAC,MAAgD;QACxD,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;QACjC,IAAI,MAAM,EAAE,UAAU,KAAK,SAAS;YAAE,EAAE,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACtF,IAAI,MAAM,EAAE,KAAK,KAAK,SAAS;YAAE,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,KAAK,CAAC,CAAC,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAChG,CAAC;IAED,2CAA2C;IAC3C,OAAO,CAAC,MAAc;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAW,kBAAkB,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,4BAA4B;IAC5B,UAAU,CAAC,MAA4B;QACrC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAW,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;IAED,oCAAoC;IACpC,WAAW,CAAC,MAAc,EAAE,MAA4B;QACtD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAW,kBAAkB,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IAED,kDAAkD;IAClD,UAAU,CACR,MAAc,EACd,UAAgE;QAEhE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAW,kBAAkB,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,mCAAmC;IACnC,UAAU,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,kBAAkB,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;CACF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { HttpClient } from '../http.js';
|
|
2
|
+
import type { SsoConfig, CreateSsoConfigParams, SsoLoginResponse, SsoCallbackResponse } from '../types.js';
|
|
3
|
+
export declare class SsoClient {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
/** Create or update the OIDC SSO configuration for this developer org. */
|
|
7
|
+
createConfig(params: CreateSsoConfigParams): Promise<SsoConfig>;
|
|
8
|
+
/** Get the current SSO configuration (client secret is not returned). */
|
|
9
|
+
getConfig(): Promise<SsoConfig>;
|
|
10
|
+
/** Remove the SSO configuration. */
|
|
11
|
+
deleteConfig(): Promise<void>;
|
|
12
|
+
/**
|
|
13
|
+
* Get the OIDC authorization URL to redirect the user to.
|
|
14
|
+
* Pass `org` as the developer ID of the org initiating SSO.
|
|
15
|
+
*/
|
|
16
|
+
getLoginUrl(org: string): Promise<SsoLoginResponse>;
|
|
17
|
+
/**
|
|
18
|
+
* Exchange the OIDC authorization code for user info.
|
|
19
|
+
* Called after the IdP redirects back to your callback URL.
|
|
20
|
+
*/
|
|
21
|
+
handleCallback(code: string, state: string): Promise<SsoCallbackResponse>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=sso.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.d.ts","sourceRoot":"","sources":["../../src/resources/sso.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,SAAS,EACT,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAErB,qBAAa,SAAS;;gBAGR,IAAI,EAAE,UAAU;IAI5B,0EAA0E;IAC1E,YAAY,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,CAAC;IAI/D,yEAAyE;IACzE,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC;IAI/B,oCAAoC;IACpC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAInD;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAK1E"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export class SsoClient {
|
|
2
|
+
#http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.#http = http;
|
|
5
|
+
}
|
|
6
|
+
/** Create or update the OIDC SSO configuration for this developer org. */
|
|
7
|
+
createConfig(params) {
|
|
8
|
+
return this.#http.post('/v1/sso/config', params);
|
|
9
|
+
}
|
|
10
|
+
/** Get the current SSO configuration (client secret is not returned). */
|
|
11
|
+
getConfig() {
|
|
12
|
+
return this.#http.get('/v1/sso/config');
|
|
13
|
+
}
|
|
14
|
+
/** Remove the SSO configuration. */
|
|
15
|
+
deleteConfig() {
|
|
16
|
+
return this.#http.delete('/v1/sso/config');
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Get the OIDC authorization URL to redirect the user to.
|
|
20
|
+
* Pass `org` as the developer ID of the org initiating SSO.
|
|
21
|
+
*/
|
|
22
|
+
getLoginUrl(org) {
|
|
23
|
+
return this.#http.get(`/sso/login?org=${encodeURIComponent(org)}`);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Exchange the OIDC authorization code for user info.
|
|
27
|
+
* Called after the IdP redirects back to your callback URL.
|
|
28
|
+
*/
|
|
29
|
+
handleCallback(code, state) {
|
|
30
|
+
return this.#http.get(`/sso/callback?code=${encodeURIComponent(code)}&state=${encodeURIComponent(state)}`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=sso.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sso.js","sourceRoot":"","sources":["../../src/resources/sso.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,SAAS;IACX,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,0EAA0E;IAC1E,YAAY,CAAC,MAA6B;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,yEAAyE;IACzE,SAAS;QACP,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED,oCAAoC;IACpC,YAAY;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAO,gBAAgB,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,GAAW;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,kBAAkB,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,IAAY,EAAE,KAAa;QACxC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CACnB,sBAAsB,kBAAkB,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,KAAK,CAAC,EAAE,CACpF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { HttpClient } from '../http.js';
|
|
2
|
+
import type { VerifyTokenResponse } from '../types.js';
|
|
3
|
+
export declare class TokensClient {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
verify(token: string): Promise<VerifyTokenResponse>;
|
|
7
|
+
revoke(tokenId: string): Promise<void>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=tokens.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/resources/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,qBAAa,YAAY;;gBAGX,IAAI,EAAE,UAAU;IAI5B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAMnD,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGvC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export class TokensClient {
|
|
2
|
+
#http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.#http = http;
|
|
5
|
+
}
|
|
6
|
+
verify(token) {
|
|
7
|
+
return this.#http.post('/v1/tokens/verify', {
|
|
8
|
+
token,
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
revoke(tokenId) {
|
|
12
|
+
return this.#http.post('/v1/tokens/revoke', { jti: tokenId });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=tokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/resources/tokens.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,YAAY;IACd,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAsB,mBAAmB,EAAE;YAC/D,KAAK;SACN,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,OAAe;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAO,mBAAmB,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;IACtE,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HttpClient } from '../http.js';
|
|
2
|
+
import type { CreateWebhookParams, WebhookEndpointWithSecret, ListWebhooksResponse } from '../types.js';
|
|
3
|
+
export declare class WebhooksClient {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
create(params: CreateWebhookParams): Promise<WebhookEndpointWithSecret>;
|
|
7
|
+
list(): Promise<ListWebhooksResponse>;
|
|
8
|
+
delete(webhookId: string): Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=webhooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/resources/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACV,mBAAmB,EACnB,yBAAyB,EACzB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AAErB,qBAAa,cAAc;;gBAGb,IAAI,EAAE,UAAU;IAI5B,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAIvE,IAAI,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAIrC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGzC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export class WebhooksClient {
|
|
2
|
+
#http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.#http = http;
|
|
5
|
+
}
|
|
6
|
+
create(params) {
|
|
7
|
+
return this.#http.post('/v1/webhooks', params);
|
|
8
|
+
}
|
|
9
|
+
list() {
|
|
10
|
+
return this.#http.get('/v1/webhooks');
|
|
11
|
+
}
|
|
12
|
+
delete(webhookId) {
|
|
13
|
+
return this.#http.delete(`/v1/webhooks/${webhookId}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=webhooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/resources/webhooks.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,cAAc;IAChB,KAAK,CAAa;IAE3B,YAAY,IAAgB;QAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,MAA2B;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,CAAC,SAAiB;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,gBAAgB,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;CACF"}
|