@blimu/client 1.2.0 → 1.2.2

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/schema.d.ts CHANGED
@@ -1 +1,2 @@
1
- export { A as AuthRefreshQuery, E as EntitlementsListResult, a as Enum, R as RefreshResponse, S as SessionResponse } from './schema-Z0doltxY.js';
1
+ import '@blimu/types';
2
+ export { A as AuthLogoutQuery, a as AuthRefreshQuery, E as EntitlementsListResult, b as Enum, R as RefreshResponse, S as SessionResponse } from './schema-BdyLvb9B.js';
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/services/auth.ts
21
+ var auth_exports = {};
22
+ __export(auth_exports, {
23
+ AuthService: () => AuthService
24
+ });
25
+ module.exports = __toCommonJS(auth_exports);
26
+
27
+ // src/utils.ts
28
+ function isNotUndefined(arr) {
29
+ return arr.filter(
30
+ (item) => item !== void 0
31
+ );
32
+ }
33
+
34
+ // src/services/auth.ts
35
+ var AuthService = class {
36
+ constructor(core) {
37
+ this.core = core;
38
+ }
39
+ /**
40
+ * POST /v1/auth/logout*
41
+ * @summary Logout and invalidate session*/
42
+ logout(query, init) {
43
+ return this.core.request({
44
+ method: "POST",
45
+ path: `/v1/auth/logout`,
46
+ query,
47
+ ...init ?? {}
48
+ });
49
+ }
50
+ /**
51
+ * @summary Get query keys for logout
52
+ * @returns ['v1/auth/logout', query]
53
+ */
54
+ logout__queryKeys(query) {
55
+ const keys = ["v1/auth/logout", query];
56
+ return isNotUndefined(keys);
57
+ }
58
+ /**
59
+ * POST /v1/auth/refresh*
60
+ * @summary Refresh session token*/
61
+ refresh(query, init) {
62
+ return this.core.request({
63
+ method: "POST",
64
+ path: `/v1/auth/refresh`,
65
+ query,
66
+ ...init ?? {}
67
+ });
68
+ }
69
+ /**
70
+ * @summary Get query keys for refresh
71
+ * @returns ['v1/auth/refresh', query]
72
+ */
73
+ refresh__queryKeys(query) {
74
+ const keys = ["v1/auth/refresh", query];
75
+ return isNotUndefined(keys);
76
+ }
77
+ /**
78
+ * GET /v1/auth/session*
79
+ * @summary Get current session*/
80
+ getSession(init) {
81
+ return this.core.request({
82
+ method: "GET",
83
+ path: `/v1/auth/session`,
84
+ ...init ?? {}
85
+ });
86
+ }
87
+ /**
88
+ * @summary Get query keys for getSession
89
+ * @returns ['v1/auth/session']
90
+ */
91
+ getSession__queryKeys() {
92
+ return ["v1/auth/session"];
93
+ }
94
+ };
95
+ // Annotate the CommonJS export names for ESM import in node:
96
+ 0 && (module.exports = {
97
+ AuthService
98
+ });
99
+ //# sourceMappingURL=auth.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/auth.ts","../../src/utils.ts"],"sourcesContent":["import type { FetchClient } from '@blimu/fetch';\nimport type * as Schema from '../schema';\nimport { isNotUndefined } from '../utils';\n\nexport class AuthService {\n constructor(private core: FetchClient) {}\n\n /**\n * POST /v1/auth/logout*\n * @summary Logout and invalidate session*/\n logout(\n query?: Schema.AuthLogoutQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ): Promise<unknown> {\n return this.core.request({\n method: 'POST',\n path: `/v1/auth/logout`,\n query,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for logout\n * @returns ['v1/auth/logout', query]\n */\n logout__queryKeys(query?: Schema.AuthLogoutQuery): readonly string[] {\n const keys = ['v1/auth/logout', query] as const;\n return isNotUndefined(keys) as readonly string[];\n }\n\n /**\n * POST /v1/auth/refresh*\n * @summary Refresh session token*/\n refresh(\n query?: Schema.AuthRefreshQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ): Promise<Schema.RefreshResponse> {\n return this.core.request({\n method: 'POST',\n path: `/v1/auth/refresh`,\n query,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for refresh\n * @returns ['v1/auth/refresh', query]\n */\n refresh__queryKeys(query?: Schema.AuthRefreshQuery): readonly string[] {\n const keys = ['v1/auth/refresh', query] as const;\n return isNotUndefined(keys) as readonly string[];\n }\n\n /**\n * GET /v1/auth/session*\n * @summary Get current session*/\n getSession(init?: Omit<RequestInit, 'method' | 'body'>): Promise<Schema.SessionResponse> {\n return this.core.request({\n method: 'GET',\n path: `/v1/auth/session`,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for getSession\n * @returns ['v1/auth/session']\n */\n getSession__queryKeys(): readonly ['v1/auth/session'] {\n return ['v1/auth/session'] as const;\n }\n}\n","import { parseSSEStream, parseNDJSONStream } from '@blimu/fetch';\n\nexport type PaginableQuery = { limit?: number; offset?: number } & Record<string, unknown>;\n\nexport async function* paginate<T>(\n fetchPage: (\n query?: PaginableQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ) => Promise<{ data?: T[]; hasMore?: boolean; limit?: number; offset?: number }>,\n initialQuery: PaginableQuery = {},\n pageSize = 100\n): AsyncGenerator<T, void, unknown> {\n let offset = Number(initialQuery.offset ?? 0);\n const limit = Number(initialQuery.limit ?? pageSize);\n // shallow copy to avoid mutating caller\n const baseQuery: PaginableQuery = { ...initialQuery };\n while (true) {\n const page = await fetchPage({ ...baseQuery, limit, offset });\n const items = page.data ?? [];\n for (const item of items) {\n yield item;\n }\n if (!page.hasMore || items.length < limit) break;\n offset += limit;\n }\n}\n\nexport async function listAll<T>(\n fetchPage: (\n query?: PaginableQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ) => Promise<{ data?: T[]; hasMore?: boolean; limit?: number; offset?: number }>,\n query: PaginableQuery = {},\n pageSize = 100\n): Promise<T[]> {\n const out: T[] = [];\n for await (const item of paginate<T>(fetchPage, query, pageSize)) out.push(item);\n return out;\n}\n\n/**\n * Filters out undefined values from an array while preserving type safety\n * Useful for query keys where optional parameters might be undefined\n * Preserves tuple types when no undefined values are present\n */\nexport function isNotUndefined<T extends readonly unknown[]>(arr: T): T {\n // Type assertion: when no undefined values exist, tuple is preserved\n // When undefined values exist, they are filtered but type system can't infer exact tuple shape\n return arr.filter(\n (item): item is Exclude<T[number], undefined> => item !== undefined\n ) as unknown as T;\n}\n\n// Re-export streaming parsers from @blimu/fetch\nexport { parseSSEStream, parseNDJSONStream };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;AC6CO,SAAS,eAA6C,KAAW;AAGtE,SAAO,IAAI;AAAA,IACT,CAAC,SAAgD,SAAS;AAAA,EAC5D;AACF;;;AD/CO,IAAM,cAAN,MAAkB;AAAA,EACvB,YAAoB,MAAmB;AAAnB;AAAA,EAAoB;AAAA;AAAA;AAAA;AAAA,EAKxC,OACE,OACA,MACkB;AAClB,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN;AAAA,MACA,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAkB,OAAmD;AACnE,UAAM,OAAO,CAAC,kBAAkB,KAAK;AACrC,WAAO,eAAe,IAAI;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKA,QACE,OACA,MACiC;AACjC,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN;AAAA,MACA,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAmB,OAAoD;AACrE,UAAM,OAAO,CAAC,mBAAmB,KAAK;AACtC,WAAO,eAAe,IAAI;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,MAA8E;AACvF,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,wBAAsD;AACpD,WAAO,CAAC,iBAAiB;AAAA,EAC3B;AACF;","names":[]}
@@ -0,0 +1,16 @@
1
+ import { FetchClient } from '@blimu/fetch';
2
+ import { A as AuthLogoutQuery, a as AuthRefreshQuery, R as RefreshResponse, S as SessionResponse } from '../schema-BdyLvb9B.mjs';
3
+ import '@blimu/types';
4
+
5
+ declare class AuthService {
6
+ private core;
7
+ constructor(core: FetchClient);
8
+ logout(query?: AuthLogoutQuery, init?: Omit<RequestInit, 'method' | 'body'>): Promise<unknown>;
9
+ logout__queryKeys(query?: AuthLogoutQuery): readonly string[];
10
+ refresh(query?: AuthRefreshQuery, init?: Omit<RequestInit, 'method' | 'body'>): Promise<RefreshResponse>;
11
+ refresh__queryKeys(query?: AuthRefreshQuery): readonly string[];
12
+ getSession(init?: Omit<RequestInit, 'method' | 'body'>): Promise<SessionResponse>;
13
+ getSession__queryKeys(): readonly ['v1/auth/session'];
14
+ }
15
+
16
+ export { AuthService };
@@ -0,0 +1,16 @@
1
+ import { FetchClient } from '@blimu/fetch';
2
+ import { A as AuthLogoutQuery, a as AuthRefreshQuery, R as RefreshResponse, S as SessionResponse } from '../schema-BdyLvb9B.js';
3
+ import '@blimu/types';
4
+
5
+ declare class AuthService {
6
+ private core;
7
+ constructor(core: FetchClient);
8
+ logout(query?: AuthLogoutQuery, init?: Omit<RequestInit, 'method' | 'body'>): Promise<unknown>;
9
+ logout__queryKeys(query?: AuthLogoutQuery): readonly string[];
10
+ refresh(query?: AuthRefreshQuery, init?: Omit<RequestInit, 'method' | 'body'>): Promise<RefreshResponse>;
11
+ refresh__queryKeys(query?: AuthRefreshQuery): readonly string[];
12
+ getSession(init?: Omit<RequestInit, 'method' | 'body'>): Promise<SessionResponse>;
13
+ getSession__queryKeys(): readonly ['v1/auth/session'];
14
+ }
15
+
16
+ export { AuthService };
@@ -0,0 +1,72 @@
1
+ // src/utils.ts
2
+ function isNotUndefined(arr) {
3
+ return arr.filter(
4
+ (item) => item !== void 0
5
+ );
6
+ }
7
+
8
+ // src/services/auth.ts
9
+ var AuthService = class {
10
+ constructor(core) {
11
+ this.core = core;
12
+ }
13
+ /**
14
+ * POST /v1/auth/logout*
15
+ * @summary Logout and invalidate session*/
16
+ logout(query, init) {
17
+ return this.core.request({
18
+ method: "POST",
19
+ path: `/v1/auth/logout`,
20
+ query,
21
+ ...init ?? {}
22
+ });
23
+ }
24
+ /**
25
+ * @summary Get query keys for logout
26
+ * @returns ['v1/auth/logout', query]
27
+ */
28
+ logout__queryKeys(query) {
29
+ const keys = ["v1/auth/logout", query];
30
+ return isNotUndefined(keys);
31
+ }
32
+ /**
33
+ * POST /v1/auth/refresh*
34
+ * @summary Refresh session token*/
35
+ refresh(query, init) {
36
+ return this.core.request({
37
+ method: "POST",
38
+ path: `/v1/auth/refresh`,
39
+ query,
40
+ ...init ?? {}
41
+ });
42
+ }
43
+ /**
44
+ * @summary Get query keys for refresh
45
+ * @returns ['v1/auth/refresh', query]
46
+ */
47
+ refresh__queryKeys(query) {
48
+ const keys = ["v1/auth/refresh", query];
49
+ return isNotUndefined(keys);
50
+ }
51
+ /**
52
+ * GET /v1/auth/session*
53
+ * @summary Get current session*/
54
+ getSession(init) {
55
+ return this.core.request({
56
+ method: "GET",
57
+ path: `/v1/auth/session`,
58
+ ...init ?? {}
59
+ });
60
+ }
61
+ /**
62
+ * @summary Get query keys for getSession
63
+ * @returns ['v1/auth/session']
64
+ */
65
+ getSession__queryKeys() {
66
+ return ["v1/auth/session"];
67
+ }
68
+ };
69
+ export {
70
+ AuthService
71
+ };
72
+ //# sourceMappingURL=auth.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils.ts","../../src/services/auth.ts"],"sourcesContent":["import { parseSSEStream, parseNDJSONStream } from '@blimu/fetch';\n\nexport type PaginableQuery = { limit?: number; offset?: number } & Record<string, unknown>;\n\nexport async function* paginate<T>(\n fetchPage: (\n query?: PaginableQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ) => Promise<{ data?: T[]; hasMore?: boolean; limit?: number; offset?: number }>,\n initialQuery: PaginableQuery = {},\n pageSize = 100\n): AsyncGenerator<T, void, unknown> {\n let offset = Number(initialQuery.offset ?? 0);\n const limit = Number(initialQuery.limit ?? pageSize);\n // shallow copy to avoid mutating caller\n const baseQuery: PaginableQuery = { ...initialQuery };\n while (true) {\n const page = await fetchPage({ ...baseQuery, limit, offset });\n const items = page.data ?? [];\n for (const item of items) {\n yield item;\n }\n if (!page.hasMore || items.length < limit) break;\n offset += limit;\n }\n}\n\nexport async function listAll<T>(\n fetchPage: (\n query?: PaginableQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ) => Promise<{ data?: T[]; hasMore?: boolean; limit?: number; offset?: number }>,\n query: PaginableQuery = {},\n pageSize = 100\n): Promise<T[]> {\n const out: T[] = [];\n for await (const item of paginate<T>(fetchPage, query, pageSize)) out.push(item);\n return out;\n}\n\n/**\n * Filters out undefined values from an array while preserving type safety\n * Useful for query keys where optional parameters might be undefined\n * Preserves tuple types when no undefined values are present\n */\nexport function isNotUndefined<T extends readonly unknown[]>(arr: T): T {\n // Type assertion: when no undefined values exist, tuple is preserved\n // When undefined values exist, they are filtered but type system can't infer exact tuple shape\n return arr.filter(\n (item): item is Exclude<T[number], undefined> => item !== undefined\n ) as unknown as T;\n}\n\n// Re-export streaming parsers from @blimu/fetch\nexport { parseSSEStream, parseNDJSONStream };\n","import type { FetchClient } from '@blimu/fetch';\nimport type * as Schema from '../schema';\nimport { isNotUndefined } from '../utils';\n\nexport class AuthService {\n constructor(private core: FetchClient) {}\n\n /**\n * POST /v1/auth/logout*\n * @summary Logout and invalidate session*/\n logout(\n query?: Schema.AuthLogoutQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ): Promise<unknown> {\n return this.core.request({\n method: 'POST',\n path: `/v1/auth/logout`,\n query,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for logout\n * @returns ['v1/auth/logout', query]\n */\n logout__queryKeys(query?: Schema.AuthLogoutQuery): readonly string[] {\n const keys = ['v1/auth/logout', query] as const;\n return isNotUndefined(keys) as readonly string[];\n }\n\n /**\n * POST /v1/auth/refresh*\n * @summary Refresh session token*/\n refresh(\n query?: Schema.AuthRefreshQuery,\n init?: Omit<RequestInit, 'method' | 'body'>\n ): Promise<Schema.RefreshResponse> {\n return this.core.request({\n method: 'POST',\n path: `/v1/auth/refresh`,\n query,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for refresh\n * @returns ['v1/auth/refresh', query]\n */\n refresh__queryKeys(query?: Schema.AuthRefreshQuery): readonly string[] {\n const keys = ['v1/auth/refresh', query] as const;\n return isNotUndefined(keys) as readonly string[];\n }\n\n /**\n * GET /v1/auth/session*\n * @summary Get current session*/\n getSession(init?: Omit<RequestInit, 'method' | 'body'>): Promise<Schema.SessionResponse> {\n return this.core.request({\n method: 'GET',\n path: `/v1/auth/session`,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for getSession\n * @returns ['v1/auth/session']\n */\n getSession__queryKeys(): readonly ['v1/auth/session'] {\n return ['v1/auth/session'] as const;\n }\n}\n"],"mappings":";AA6CO,SAAS,eAA6C,KAAW;AAGtE,SAAO,IAAI;AAAA,IACT,CAAC,SAAgD,SAAS;AAAA,EAC5D;AACF;;;AC/CO,IAAM,cAAN,MAAkB;AAAA,EACvB,YAAoB,MAAmB;AAAnB;AAAA,EAAoB;AAAA;AAAA;AAAA;AAAA,EAKxC,OACE,OACA,MACkB;AAClB,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN;AAAA,MACA,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,kBAAkB,OAAmD;AACnE,UAAM,OAAO,CAAC,kBAAkB,KAAK;AACrC,WAAO,eAAe,IAAI;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKA,QACE,OACA,MACiC;AACjC,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN;AAAA,MACA,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,mBAAmB,OAAoD;AACrE,UAAM,OAAO,CAAC,mBAAmB,KAAK;AACtC,WAAO,eAAe,IAAI;AAAA,EAC5B;AAAA;AAAA;AAAA;AAAA,EAKA,WAAW,MAA8E;AACvF,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM;AAAA,MACN,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,wBAAsD;AACpD,WAAO,CAAC,iBAAiB;AAAA,EAC3B;AACF;","names":[]}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/services/entitlements.ts
21
+ var entitlements_exports = {};
22
+ __export(entitlements_exports, {
23
+ EntitlementsService: () => EntitlementsService
24
+ });
25
+ module.exports = __toCommonJS(entitlements_exports);
26
+ var EntitlementsService = class {
27
+ constructor(core) {
28
+ this.core = core;
29
+ }
30
+ /**
31
+ * GET /v1/client/entitlements/list-for-tenant/{tenantResourceId}*
32
+ * @summary List entitlements for a tenant and all its sub-resources*
33
+ * @description Returns entitlements for a tenant resource and all its descendant resources for the authenticated user. This endpoint scopes queries to a single tenant, preventing cross-tenant data access. Only evaluates roles and plans (excludes limits). Results are cached per resource for performance. The tenant resource type is automatically determined from the environment definition (resource marked as `is_tenant: true`).*/
34
+ listForTenant(tenantResourceId, init) {
35
+ return this.core.request({
36
+ method: "GET",
37
+ path: `/v1/client/entitlements/list-for-tenant/${encodeURIComponent(tenantResourceId)}`,
38
+ ...init ?? {}
39
+ });
40
+ }
41
+ /**
42
+ * @summary Get query keys for listForTenant
43
+ * @returns ['v1/client/entitlements/list-for-tenant', tenantResourceId]
44
+ */
45
+ listForTenant__queryKeys(tenantResourceId) {
46
+ return ["v1/client/entitlements/list-for-tenant", tenantResourceId];
47
+ }
48
+ };
49
+ // Annotate the CommonJS export names for ESM import in node:
50
+ 0 && (module.exports = {
51
+ EntitlementsService
52
+ });
53
+ //# sourceMappingURL=entitlements.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/entitlements.ts"],"sourcesContent":["import type { FetchClient } from '@blimu/fetch';\nimport type * as Schema from '../schema';\n\nexport class EntitlementsService {\n constructor(private core: FetchClient) {}\n\n /**\n * GET /v1/client/entitlements/list-for-tenant/{tenantResourceId}*\n * @summary List entitlements for a tenant and all its sub-resources*\n * @description Returns entitlements for a tenant resource and all its descendant resources for the authenticated user. This endpoint scopes queries to a single tenant, preventing cross-tenant data access. Only evaluates roles and plans (excludes limits). Results are cached per resource for performance. The tenant resource type is automatically determined from the environment definition (resource marked as `is_tenant: true`).*/\n listForTenant(\n tenantResourceId: string,\n init?: Omit<RequestInit, 'method' | 'body'>\n ): Promise<Schema.EntitlementsListResult> {\n return this.core.request({\n method: 'GET',\n path: `/v1/client/entitlements/list-for-tenant/${encodeURIComponent(tenantResourceId)}`,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for listForTenant\n * @returns ['v1/client/entitlements/list-for-tenant', tenantResourceId]\n */\n listForTenant__queryKeys(\n tenantResourceId: string\n ): readonly ['v1/client/entitlements/list-for-tenant', string] {\n return ['v1/client/entitlements/list-for-tenant', tenantResourceId] as const;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGO,IAAM,sBAAN,MAA0B;AAAA,EAC/B,YAAoB,MAAmB;AAAnB;AAAA,EAAoB;AAAA;AAAA;AAAA;AAAA;AAAA,EAMxC,cACE,kBACA,MACwC;AACxC,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM,2CAA2C,mBAAmB,gBAAgB,CAAC;AAAA,MACrF,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,yBACE,kBAC6D;AAC7D,WAAO,CAAC,0CAA0C,gBAAgB;AAAA,EACpE;AACF;","names":[]}
@@ -0,0 +1,12 @@
1
+ import { FetchClient } from '@blimu/fetch';
2
+ import { E as EntitlementsListResult } from '../schema-BdyLvb9B.mjs';
3
+ import '@blimu/types';
4
+
5
+ declare class EntitlementsService {
6
+ private core;
7
+ constructor(core: FetchClient);
8
+ listForTenant(tenantResourceId: string, init?: Omit<RequestInit, 'method' | 'body'>): Promise<EntitlementsListResult>;
9
+ listForTenant__queryKeys(tenantResourceId: string): readonly ['v1/client/entitlements/list-for-tenant', string];
10
+ }
11
+
12
+ export { EntitlementsService };
@@ -0,0 +1,12 @@
1
+ import { FetchClient } from '@blimu/fetch';
2
+ import { E as EntitlementsListResult } from '../schema-BdyLvb9B.js';
3
+ import '@blimu/types';
4
+
5
+ declare class EntitlementsService {
6
+ private core;
7
+ constructor(core: FetchClient);
8
+ listForTenant(tenantResourceId: string, init?: Omit<RequestInit, 'method' | 'body'>): Promise<EntitlementsListResult>;
9
+ listForTenant__queryKeys(tenantResourceId: string): readonly ['v1/client/entitlements/list-for-tenant', string];
10
+ }
11
+
12
+ export { EntitlementsService };
@@ -0,0 +1,28 @@
1
+ // src/services/entitlements.ts
2
+ var EntitlementsService = class {
3
+ constructor(core) {
4
+ this.core = core;
5
+ }
6
+ /**
7
+ * GET /v1/client/entitlements/list-for-tenant/{tenantResourceId}*
8
+ * @summary List entitlements for a tenant and all its sub-resources*
9
+ * @description Returns entitlements for a tenant resource and all its descendant resources for the authenticated user. This endpoint scopes queries to a single tenant, preventing cross-tenant data access. Only evaluates roles and plans (excludes limits). Results are cached per resource for performance. The tenant resource type is automatically determined from the environment definition (resource marked as `is_tenant: true`).*/
10
+ listForTenant(tenantResourceId, init) {
11
+ return this.core.request({
12
+ method: "GET",
13
+ path: `/v1/client/entitlements/list-for-tenant/${encodeURIComponent(tenantResourceId)}`,
14
+ ...init ?? {}
15
+ });
16
+ }
17
+ /**
18
+ * @summary Get query keys for listForTenant
19
+ * @returns ['v1/client/entitlements/list-for-tenant', tenantResourceId]
20
+ */
21
+ listForTenant__queryKeys(tenantResourceId) {
22
+ return ["v1/client/entitlements/list-for-tenant", tenantResourceId];
23
+ }
24
+ };
25
+ export {
26
+ EntitlementsService
27
+ };
28
+ //# sourceMappingURL=entitlements.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/services/entitlements.ts"],"sourcesContent":["import type { FetchClient } from '@blimu/fetch';\nimport type * as Schema from '../schema';\n\nexport class EntitlementsService {\n constructor(private core: FetchClient) {}\n\n /**\n * GET /v1/client/entitlements/list-for-tenant/{tenantResourceId}*\n * @summary List entitlements for a tenant and all its sub-resources*\n * @description Returns entitlements for a tenant resource and all its descendant resources for the authenticated user. This endpoint scopes queries to a single tenant, preventing cross-tenant data access. Only evaluates roles and plans (excludes limits). Results are cached per resource for performance. The tenant resource type is automatically determined from the environment definition (resource marked as `is_tenant: true`).*/\n listForTenant(\n tenantResourceId: string,\n init?: Omit<RequestInit, 'method' | 'body'>\n ): Promise<Schema.EntitlementsListResult> {\n return this.core.request({\n method: 'GET',\n path: `/v1/client/entitlements/list-for-tenant/${encodeURIComponent(tenantResourceId)}`,\n ...(init ?? {}),\n });\n }\n /**\n * @summary Get query keys for listForTenant\n * @returns ['v1/client/entitlements/list-for-tenant', tenantResourceId]\n */\n listForTenant__queryKeys(\n tenantResourceId: string\n ): readonly ['v1/client/entitlements/list-for-tenant', string] {\n return ['v1/client/entitlements/list-for-tenant', tenantResourceId] as const;\n }\n}\n"],"mappings":";AAGO,IAAM,sBAAN,MAA0B;AAAA,EAC/B,YAAoB,MAAmB;AAAnB;AAAA,EAAoB;AAAA;AAAA;AAAA;AAAA;AAAA,EAMxC,cACE,kBACA,MACwC;AACxC,WAAO,KAAK,KAAK,QAAQ;AAAA,MACvB,QAAQ;AAAA,MACR,MAAM,2CAA2C,mBAAmB,gBAAgB,CAAC;AAAA,MACrF,GAAI,QAAQ,CAAC;AAAA,IACf,CAAC;AAAA,EACH;AAAA;AAAA;AAAA;AAAA;AAAA,EAKA,yBACE,kBAC6D;AAC7D,WAAO,CAAC,0CAA0C,gBAAgB;AAAA,EACpE;AACF;","names":[]}