@searchstack/public-api 1.0.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.
Files changed (87) hide show
  1. package/LICENSE +15 -0
  2. package/README.md +200 -0
  3. package/dist/AccountService.d.ts +12 -0
  4. package/dist/AccountService.d.ts.map +1 -0
  5. package/dist/AccountService.js +19 -0
  6. package/dist/AccountService.js.map +1 -0
  7. package/dist/AnalyticsService.d.ts +12 -0
  8. package/dist/AnalyticsService.d.ts.map +1 -0
  9. package/dist/AnalyticsService.js +32 -0
  10. package/dist/AnalyticsService.js.map +1 -0
  11. package/dist/Client.d.ts +59 -0
  12. package/dist/Client.d.ts.map +1 -0
  13. package/dist/Client.js +78 -0
  14. package/dist/Client.js.map +1 -0
  15. package/dist/ContributorService.d.ts +12 -0
  16. package/dist/ContributorService.d.ts.map +1 -0
  17. package/dist/ContributorService.js +20 -0
  18. package/dist/ContributorService.js.map +1 -0
  19. package/dist/CoordinatesService.d.ts +12 -0
  20. package/dist/CoordinatesService.d.ts.map +1 -0
  21. package/dist/CoordinatesService.js +21 -0
  22. package/dist/CoordinatesService.js.map +1 -0
  23. package/dist/DiscoveryService.d.ts +13 -0
  24. package/dist/DiscoveryService.d.ts.map +1 -0
  25. package/dist/DiscoveryService.js +25 -0
  26. package/dist/DiscoveryService.js.map +1 -0
  27. package/dist/EvalService.d.ts +24 -0
  28. package/dist/EvalService.d.ts.map +1 -0
  29. package/dist/EvalService.js +55 -0
  30. package/dist/EvalService.js.map +1 -0
  31. package/dist/FacetService.d.ts +14 -0
  32. package/dist/FacetService.d.ts.map +1 -0
  33. package/dist/FacetService.js +26 -0
  34. package/dist/FacetService.js.map +1 -0
  35. package/dist/Fetch.d.ts +23 -0
  36. package/dist/Fetch.d.ts.map +1 -0
  37. package/dist/Fetch.js +74 -0
  38. package/dist/Fetch.js.map +1 -0
  39. package/dist/GroupService.d.ts +44 -0
  40. package/dist/GroupService.d.ts.map +1 -0
  41. package/dist/GroupService.js +100 -0
  42. package/dist/GroupService.js.map +1 -0
  43. package/dist/JudgeService.d.ts +22 -0
  44. package/dist/JudgeService.d.ts.map +1 -0
  45. package/dist/JudgeService.js +47 -0
  46. package/dist/JudgeService.js.map +1 -0
  47. package/dist/ListService.d.ts +18 -0
  48. package/dist/ListService.d.ts.map +1 -0
  49. package/dist/ListService.js +35 -0
  50. package/dist/ListService.js.map +1 -0
  51. package/dist/MediaStoreService.d.ts +10 -0
  52. package/dist/MediaStoreService.d.ts.map +1 -0
  53. package/dist/MediaStoreService.js +15 -0
  54. package/dist/MediaStoreService.js.map +1 -0
  55. package/dist/ResourceService.d.ts +14 -0
  56. package/dist/ResourceService.d.ts.map +1 -0
  57. package/dist/ResourceService.js +26 -0
  58. package/dist/ResourceService.js.map +1 -0
  59. package/dist/SearchResultService.d.ts +33 -0
  60. package/dist/SearchResultService.d.ts.map +1 -0
  61. package/dist/SearchResultService.js +67 -0
  62. package/dist/SearchResultService.js.map +1 -0
  63. package/dist/SearchService.d.ts +31 -0
  64. package/dist/SearchService.d.ts.map +1 -0
  65. package/dist/SearchService.js +75 -0
  66. package/dist/SearchService.js.map +1 -0
  67. package/dist/SearchableFieldService.d.ts +14 -0
  68. package/dist/SearchableFieldService.d.ts.map +1 -0
  69. package/dist/SearchableFieldService.js +26 -0
  70. package/dist/SearchableFieldService.js.map +1 -0
  71. package/dist/SuggestService.d.ts +12 -0
  72. package/dist/SuggestService.d.ts.map +1 -0
  73. package/dist/SuggestService.js +23 -0
  74. package/dist/SuggestService.js.map +1 -0
  75. package/dist/Types.d.ts +753 -0
  76. package/dist/Types.d.ts.map +1 -0
  77. package/dist/Types.js +38 -0
  78. package/dist/Types.js.map +1 -0
  79. package/dist/handleResponse.d.ts +4 -0
  80. package/dist/handleResponse.d.ts.map +1 -0
  81. package/dist/handleResponse.js +22 -0
  82. package/dist/handleResponse.js.map +1 -0
  83. package/dist/index.d.ts +4 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +3 -0
  86. package/dist/index.js.map +1 -0
  87. package/package.json +52 -0
@@ -0,0 +1,55 @@
1
+ import { handleResponse } from "./handleResponse.js";
2
+ const enc = encodeURIComponent;
3
+ // Eval sets: fixed query/expected-result suites scored by a Judge to track
4
+ // search quality over time.
5
+ export default class EvalService {
6
+ fetch;
7
+ path = `eval`;
8
+ constructor(fetch) {
9
+ this.fetch = fetch;
10
+ }
11
+ /** Lists the eval sets in an Account. */
12
+ async list(account_name) {
13
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}`);
14
+ return handleResponse(response, async () => (await response.json()));
15
+ }
16
+ /** Retrieves a single eval set. */
17
+ async get(account_name, eval_set_name) {
18
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}/${enc(eval_set_name)}`);
19
+ return handleResponse(response, async () => (await response.json()));
20
+ }
21
+ /** Retrieves the run history of an eval set. Pass a continuation token to page. */
22
+ async runs(account_name, eval_set_name, continuation_token) {
23
+ let path = `${this.path}/${enc(account_name)}/${enc(eval_set_name)}/runs`;
24
+ if (continuation_token)
25
+ path += `?continuation-token=${enc(continuation_token)}`;
26
+ const response = await this.fetch.get(path);
27
+ return handleResponse(response, async () => (await response.json()));
28
+ }
29
+ /** Retrieves the status (and results, once available) of a single eval run. */
30
+ async runStatus(account_name, eval_set_name, run_id) {
31
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}/${enc(eval_set_name)}/run/${enc(run_id)}`);
32
+ return handleResponse(response, async () => (await response.json()));
33
+ }
34
+ /** Creates an eval set. */
35
+ async create(account_name, request) {
36
+ const response = await this.fetch.post(`${this.path}/${enc(account_name)}`, request);
37
+ return handleResponse(response, async () => (await response.json()));
38
+ }
39
+ /** Creates an eval set from the judged candidates of past Judge runs. */
40
+ async bootstrap(account_name, request) {
41
+ const response = await this.fetch.post(`${this.path}/${enc(account_name)}/bootstrap`, request);
42
+ return handleResponse(response, async () => (await response.json()));
43
+ }
44
+ /** Starts an eval run. Runs asynchronously; resolves with the new run's id (HTTP 202). */
45
+ async run(account_name, eval_set_name) {
46
+ const response = await this.fetch.post(`${this.path}/${enc(account_name)}/${enc(eval_set_name)}/run`, undefined);
47
+ return handleResponse(response, async () => (await response.json()));
48
+ }
49
+ /** Deletes an eval set. */
50
+ async delete(account_name, eval_set_name) {
51
+ const response = await this.fetch.delete(`${this.path}/${enc(account_name)}/${enc(eval_set_name)}`);
52
+ return handleResponse(response, () => undefined);
53
+ }
54
+ }
55
+ //# sourceMappingURL=EvalService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EvalService.js","sourceRoot":"","sources":["../src/EvalService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import Fetch from "./Fetch.js";
2
+ import { Response, Problem, FacetResponse, CreateFacetRequest, RenameFacetRequest } from "./Types.js";
3
+ export default class FacetService {
4
+ private readonly fetch;
5
+ private readonly path;
6
+ constructor(fetch: Fetch);
7
+ /** Creates a Facet - a filterable field such as brand, color, price or category. */
8
+ create(request: CreateFacetRequest): Promise<Response<FacetResponse, Problem>>;
9
+ /** Renames a Facet. Breaking change - automatically updates the List version. */
10
+ rename(account_name: string, list_name: string, facet_name: string, request: RenameFacetRequest): Promise<Response<FacetResponse, Problem>>;
11
+ /** Removes a Facet. Breaking change - automatically updates the List version. */
12
+ remove(account_name: string, list_name: string, facet_name: string): Promise<Response<void, Problem>>;
13
+ }
14
+ //# sourceMappingURL=FacetService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FacetService.d.ts","sourceRoot":"","sources":["../src/FacetService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEtG,MAAM,CAAC,OAAO,OAAO,YAAY;IAEnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IADlC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAW;gBACH,KAAK,EAAE,KAAK;IAEzC,oFAAoF;IAC9E,MAAM,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAKpF,iFAAiF;IAC3E,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAMjJ,iFAAiF;IAC3E,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;CAK5G"}
@@ -0,0 +1,26 @@
1
+ import { handleResponse } from "./handleResponse.js";
2
+ export default class FacetService {
3
+ fetch;
4
+ path = `facet`;
5
+ constructor(fetch) {
6
+ this.fetch = fetch;
7
+ }
8
+ /** Creates a Facet - a filterable field such as brand, color, price or category. */
9
+ async create(request) {
10
+ const response = await this.fetch.post(this.path, request);
11
+ return handleResponse(response, async () => (await response.json()));
12
+ }
13
+ /** Renames a Facet. Breaking change - automatically updates the List version. */
14
+ async rename(account_name, list_name, facet_name, request) {
15
+ const path = `${this.path}/${encodeURIComponent(account_name)}/${encodeURIComponent(list_name)}/${encodeURIComponent(facet_name)}`;
16
+ const response = await this.fetch.put(path, request);
17
+ return handleResponse(response, async () => (await response.json()));
18
+ }
19
+ /** Removes a Facet. Breaking change - automatically updates the List version. */
20
+ async remove(account_name, list_name, facet_name) {
21
+ const path = `${this.path}/${encodeURIComponent(account_name)}/${encodeURIComponent(list_name)}/${encodeURIComponent(facet_name)}`;
22
+ const response = await this.fetch.delete(path);
23
+ return handleResponse(response, () => undefined);
24
+ }
25
+ }
26
+ //# sourceMappingURL=FacetService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FacetService.js","sourceRoot":"","sources":["../src/FacetService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,MAAM,CAAC,OAAO,OAAO,YAAY;IAEF;IADZ,IAAI,GAAG,OAAO,CAAC;IAChC,YAA6B,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IAAG,CAAC;IAE7C,oFAAoF;IACpF,KAAK,CAAC,MAAM,CAAC,OAA2B;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3D,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC,CAAC;IACxF,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,MAAM,CAAC,YAAoB,EAAE,SAAiB,EAAE,UAAkB,EAAE,OAA2B;QACnG,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QACnI,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAkB,CAAC,CAAC;IACxF,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,MAAM,CAAC,YAAoB,EAAE,SAAiB,EAAE,UAAkB;QACtE,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QACnI,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;CACF"}
@@ -0,0 +1,23 @@
1
+ /** Credentials for the client. Supply at least one of the two. */
2
+ export type Credentials = {
3
+ /** API key, sent as the `X-API-Key` header. */
4
+ apiKey?: string;
5
+ /** JWT access token, sent as `Authorization: Bearer <token>`. */
6
+ accessToken?: string;
7
+ };
8
+ export default class Fetch {
9
+ readonly baseUri: string;
10
+ private credentials;
11
+ constructor(baseUri: string, credentials: Credentials);
12
+ /** Replace the access token (e.g. after a refresh). Pass undefined to clear it. */
13
+ setAccessToken(accessToken: string | undefined): void;
14
+ /** Replace the API key. Pass undefined to clear it. */
15
+ setApiKey(apiKey: string | undefined): void;
16
+ private getUrl;
17
+ private authHeaders;
18
+ get(path: string): Promise<globalThis.Response>;
19
+ post(path: string, body: unknown): Promise<globalThis.Response>;
20
+ put(path: string, body: unknown): Promise<globalThis.Response>;
21
+ delete(path: string): Promise<globalThis.Response>;
22
+ }
23
+ //# sourceMappingURL=Fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fetch.d.ts","sourceRoot":"","sources":["../src/Fetch.ts"],"names":[],"mappings":"AAKA,kEAAkE;AAClE,MAAM,MAAM,WAAW,GAAG;IACxB,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,KAAK;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,WAAW,CAAc;gBAErB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW;IAKrD,mFAAmF;IACnF,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAIrD,uDAAuD;IACvD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAI3C,OAAO,CAAC,MAAM,CAKZ;IAEF,OAAO,CAAC,WAAW;IAUb,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;IAU/C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;IAW/D,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;IAW9D,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;CASzD"}
package/dist/Fetch.js ADDED
@@ -0,0 +1,74 @@
1
+ // Thin transport over the global `fetch`. Holds the client-level credentials and
2
+ // attaches the appropriate auth header to every request. The public API accepts
3
+ // either an API key (`X-API-Key` header) or a JWT access token
4
+ // (`Authorization: Bearer`); when both are configured the access token wins.
5
+ export default class Fetch {
6
+ baseUri;
7
+ credentials;
8
+ constructor(baseUri, credentials) {
9
+ this.baseUri = baseUri.endsWith('/') ? baseUri : baseUri + '/';
10
+ this.credentials = { ...credentials };
11
+ }
12
+ /** Replace the access token (e.g. after a refresh). Pass undefined to clear it. */
13
+ setAccessToken(accessToken) {
14
+ this.credentials.accessToken = accessToken;
15
+ }
16
+ /** Replace the API key. Pass undefined to clear it. */
17
+ setApiKey(apiKey) {
18
+ this.credentials.apiKey = apiKey;
19
+ }
20
+ getUrl = (path) => {
21
+ if (path.startsWith('/')) {
22
+ path = path.substring(1);
23
+ }
24
+ return `${this.baseUri}${path}`;
25
+ };
26
+ authHeaders() {
27
+ if (this.credentials.accessToken) {
28
+ return { 'Authorization': `Bearer ${this.credentials.accessToken}` };
29
+ }
30
+ if (this.credentials.apiKey) {
31
+ return { 'X-API-Key': this.credentials.apiKey };
32
+ }
33
+ return {};
34
+ }
35
+ async get(path) {
36
+ return await fetch(this.getUrl(path), {
37
+ method: 'GET',
38
+ headers: {
39
+ 'Content-Type': 'application/json',
40
+ ...this.authHeaders(),
41
+ },
42
+ });
43
+ }
44
+ async post(path, body) {
45
+ return await fetch(this.getUrl(path), {
46
+ method: 'POST',
47
+ headers: {
48
+ 'Content-Type': 'application/json',
49
+ ...this.authHeaders(),
50
+ },
51
+ body: body !== undefined && body !== null ? JSON.stringify(body) : null,
52
+ });
53
+ }
54
+ async put(path, body) {
55
+ return await fetch(this.getUrl(path), {
56
+ method: 'PUT',
57
+ headers: {
58
+ 'Content-Type': 'application/json',
59
+ ...this.authHeaders(),
60
+ },
61
+ body: body !== undefined && body !== null ? JSON.stringify(body) : null,
62
+ });
63
+ }
64
+ async delete(path) {
65
+ return await fetch(this.getUrl(path), {
66
+ method: 'DELETE',
67
+ headers: {
68
+ 'Content-Type': 'application/json',
69
+ ...this.authHeaders(),
70
+ },
71
+ });
72
+ }
73
+ }
74
+ //# sourceMappingURL=Fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fetch.js","sourceRoot":"","sources":["../src/Fetch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import Fetch from "./Fetch.js";
2
+ import { Response, Problem, GroupResponse, GroupVersionsResponse, GroupVersionMembersResponse, GroupRestoreResponse, CreateGroupRequest, CloneGroupRequest, EditGroupRequest, AddListToGroupRequest, EditGroupModelRequest, AddGroupRerankerRequest, AddIpAddressRequest, TransferGroupRequest } from "./Types.js";
3
+ export default class GroupService {
4
+ private readonly fetch;
5
+ private readonly path;
6
+ constructor(fetch: Fetch);
7
+ /** Creates a Group - search multiple Lists by combining them into a Group. */
8
+ create(request: CreateGroupRequest): Promise<Response<GroupResponse, Problem>>;
9
+ /** Retrieves the details of a Group. */
10
+ get(account_name: string, group_name: string): Promise<Response<GroupResponse, Problem>>;
11
+ /** Lists the membership versions of a Group, and which is current. */
12
+ versions(account_name: string, group_name: string): Promise<Response<GroupVersionsResponse, Problem>>;
13
+ /** Retrieves the member Lists pinned at a specific Group membership version. */
14
+ versionMembers(account_name: string, group_name: string, version: number): Promise<Response<GroupVersionMembersResponse, Problem>>;
15
+ /** Edits Group defaults (search/suggest size, units). */
16
+ edit(account_name: string, group_name: string, request: EditGroupRequest): Promise<Response<GroupResponse, Problem>>;
17
+ /** Clones a Group into a new Group, copying its configuration and member Lists. */
18
+ clone(account_name: string, group_name: string, request: CloneGroupRequest): Promise<Response<GroupResponse, Problem>>;
19
+ /** Bumps the Group to a new membership version, pinning members to their latest versions. */
20
+ bumpVersion(account_name: string, group_name: string): Promise<Response<GroupResponse, Problem>>;
21
+ /** Rolls the Group's membership forward to a past version. */
22
+ restore(account_name: string, group_name: string, version: number): Promise<Response<GroupRestoreResponse, Problem>>;
23
+ /** Adds a List (at a specific version) to the Group. */
24
+ addList(account_name: string, group_name: string, request: AddListToGroupRequest): Promise<Response<GroupResponse, Problem>>;
25
+ /** Removes a List from the Group. */
26
+ removeList(account_name: string, group_name: string, list_name: string): Promise<Response<GroupResponse, Problem>>;
27
+ /** Sets the embedding model used by the Group (queued, converges asynchronously). */
28
+ setModel(account_name: string, group_name: string, request: EditGroupModelRequest): Promise<Response<GroupResponse, Problem>>;
29
+ /** Removes the Group's explicit model, reverting to the default. */
30
+ removeModel(account_name: string, group_name: string): Promise<Response<GroupResponse, Problem>>;
31
+ /** Sets the reranker applied to Group search results. */
32
+ setReranker(account_name: string, group_name: string, request: AddGroupRerankerRequest): Promise<Response<GroupResponse, Problem>>;
33
+ /** Removes the Group's reranker. */
34
+ removeReranker(account_name: string, group_name: string): Promise<Response<GroupResponse, Problem>>;
35
+ /** Whitelists an IP address (or CIDR range) for the Group. */
36
+ addIpAddress(account_name: string, group_name: string, request: AddIpAddressRequest): Promise<Response<GroupResponse, Problem>>;
37
+ /** Removes a whitelisted IP address from the Group. */
38
+ removeIpAddress(account_name: string, group_name: string, ip_address: string): Promise<Response<GroupResponse, Problem>>;
39
+ /** Moves the Group to a different subscription. */
40
+ transfer(account_name: string, group_name: string, request: TransferGroupRequest): Promise<Response<GroupResponse, Problem>>;
41
+ /** Removes an existing Group. */
42
+ delete(account_name: string, group_name: string): Promise<Response<void, Problem>>;
43
+ }
44
+ //# sourceMappingURL=GroupService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupService.d.ts","sourceRoot":"","sources":["../src/GroupService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,100 @@
1
+ import { handleResponse } from "./handleResponse.js";
2
+ const enc = encodeURIComponent;
3
+ export default class GroupService {
4
+ fetch;
5
+ path = `group`;
6
+ constructor(fetch) {
7
+ this.fetch = fetch;
8
+ }
9
+ /** Creates a Group - search multiple Lists by combining them into a Group. */
10
+ async create(request) {
11
+ const response = await this.fetch.post(this.path, request);
12
+ return handleResponse(response, async () => (await response.json()));
13
+ }
14
+ /** Retrieves the details of a Group. */
15
+ async get(account_name, group_name) {
16
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}/${enc(group_name)}`);
17
+ return handleResponse(response, async () => (await response.json()));
18
+ }
19
+ /** Lists the membership versions of a Group, and which is current. */
20
+ async versions(account_name, group_name) {
21
+ const response = await this.fetch.get(`${this.path}/versions/${enc(account_name)}/${enc(group_name)}`);
22
+ return handleResponse(response, async () => (await response.json()));
23
+ }
24
+ /** Retrieves the member Lists pinned at a specific Group membership version. */
25
+ async versionMembers(account_name, group_name, version) {
26
+ const response = await this.fetch.get(`${this.path}/versions/${enc(account_name)}/${enc(group_name)}/${version}`);
27
+ return handleResponse(response, async () => (await response.json()));
28
+ }
29
+ /** Edits Group defaults (search/suggest size, units). */
30
+ async edit(account_name, group_name, request) {
31
+ const response = await this.fetch.put(`${this.path}/${enc(account_name)}/${enc(group_name)}`, request);
32
+ return handleResponse(response, async () => (await response.json()));
33
+ }
34
+ /** Clones a Group into a new Group, copying its configuration and member Lists. */
35
+ async clone(account_name, group_name, request) {
36
+ const response = await this.fetch.post(`${this.path}/clone/${enc(account_name)}/${enc(group_name)}`, request);
37
+ return handleResponse(response, async () => (await response.json()));
38
+ }
39
+ /** Bumps the Group to a new membership version, pinning members to their latest versions. */
40
+ async bumpVersion(account_name, group_name) {
41
+ const response = await this.fetch.post(`${this.path}/version/${enc(account_name)}/${enc(group_name)}`, undefined);
42
+ return handleResponse(response, async () => (await response.json()));
43
+ }
44
+ /** Rolls the Group's membership forward to a past version. */
45
+ async restore(account_name, group_name, version) {
46
+ const response = await this.fetch.post(`${this.path}/restore/${enc(account_name)}/${enc(group_name)}/${version}`, undefined);
47
+ return handleResponse(response, async () => (await response.json()));
48
+ }
49
+ /** Adds a List (at a specific version) to the Group. */
50
+ async addList(account_name, group_name, request) {
51
+ const response = await this.fetch.put(`${this.path}/list/${enc(account_name)}/${enc(group_name)}`, request);
52
+ return handleResponse(response, async () => (await response.json()));
53
+ }
54
+ /** Removes a List from the Group. */
55
+ async removeList(account_name, group_name, list_name) {
56
+ const response = await this.fetch.delete(`${this.path}/list/${enc(account_name)}/${enc(group_name)}/${enc(list_name)}`);
57
+ return handleResponse(response, async () => (await response.json()));
58
+ }
59
+ /** Sets the embedding model used by the Group (queued, converges asynchronously). */
60
+ async setModel(account_name, group_name, request) {
61
+ const response = await this.fetch.put(`${this.path}/model/${enc(account_name)}/${enc(group_name)}`, request);
62
+ return handleResponse(response, async () => (await response.json()));
63
+ }
64
+ /** Removes the Group's explicit model, reverting to the default. */
65
+ async removeModel(account_name, group_name) {
66
+ const response = await this.fetch.delete(`${this.path}/model/${enc(account_name)}/${enc(group_name)}`);
67
+ return handleResponse(response, async () => (await response.json()));
68
+ }
69
+ /** Sets the reranker applied to Group search results. */
70
+ async setReranker(account_name, group_name, request) {
71
+ const response = await this.fetch.post(`${this.path}/reranker/${enc(account_name)}/${enc(group_name)}`, request);
72
+ return handleResponse(response, async () => (await response.json()));
73
+ }
74
+ /** Removes the Group's reranker. */
75
+ async removeReranker(account_name, group_name) {
76
+ const response = await this.fetch.delete(`${this.path}/reranker/${enc(account_name)}/${enc(group_name)}`);
77
+ return handleResponse(response, async () => (await response.json()));
78
+ }
79
+ /** Whitelists an IP address (or CIDR range) for the Group. */
80
+ async addIpAddress(account_name, group_name, request) {
81
+ const response = await this.fetch.post(`${this.path}/ip-whitelist/${enc(account_name)}/${enc(group_name)}`, request);
82
+ return handleResponse(response, async () => (await response.json()));
83
+ }
84
+ /** Removes a whitelisted IP address from the Group. */
85
+ async removeIpAddress(account_name, group_name, ip_address) {
86
+ const response = await this.fetch.delete(`${this.path}/ip-whitelist/${enc(account_name)}/${enc(group_name)}/${enc(ip_address)}`);
87
+ return handleResponse(response, async () => (await response.json()));
88
+ }
89
+ /** Moves the Group to a different subscription. */
90
+ async transfer(account_name, group_name, request) {
91
+ const response = await this.fetch.put(`${this.path}/transfer/${enc(account_name)}/${enc(group_name)}`, request);
92
+ return handleResponse(response, async () => (await response.json()));
93
+ }
94
+ /** Removes an existing Group. */
95
+ async delete(account_name, group_name) {
96
+ const response = await this.fetch.delete(`${this.path}/${enc(account_name)}/${enc(group_name)}`);
97
+ return handleResponse(response, () => undefined);
98
+ }
99
+ }
100
+ //# sourceMappingURL=GroupService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GroupService.js","sourceRoot":"","sources":["../src/GroupService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import Fetch from "./Fetch.js";
2
+ import { Response, Problem, JudgeDetailsResponse, JudgeRunStatusResponse, RunJudgeResponse, TryJudgeResponse, CreateJudgeRequest, RunJudgeRequest, TryJudgeRequest } from "./Types.js";
3
+ export default class JudgeService {
4
+ private readonly fetch;
5
+ private readonly path;
6
+ constructor(fetch: Fetch);
7
+ /** Lists the Judges in an Account. */
8
+ list(account_name: string): Promise<Response<JudgeDetailsResponse[], Problem>>;
9
+ /** Retrieves a single Judge. */
10
+ get(account_name: string, judge_name: string): Promise<Response<JudgeDetailsResponse, Problem>>;
11
+ /** Retrieves the status (and per-candidate results) of a Judge run. */
12
+ runStatus(account_name: string, run_id: string): Promise<Response<JudgeRunStatusResponse, Problem>>;
13
+ /** Creates a Judge. */
14
+ create(account_name: string, request: CreateJudgeRequest): Promise<Response<JudgeDetailsResponse, Problem>>;
15
+ /** Runs a Judge over explicit candidates or live search hits. Asynchronous (HTTP 202). */
16
+ run(account_name: string, judge_name: string, request: RunJudgeRequest): Promise<Response<RunJudgeResponse, Problem>>;
17
+ /** Synchronously tries a Judge against a single candidate and returns its verdict. */
18
+ try(account_name: string, judge_name: string, request: TryJudgeRequest): Promise<Response<TryJudgeResponse, Problem>>;
19
+ /** Deletes a Judge. */
20
+ delete(account_name: string, judge_name: string): Promise<Response<void, Problem>>;
21
+ }
22
+ //# sourceMappingURL=JudgeService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JudgeService.d.ts","sourceRoot":"","sources":["../src/JudgeService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EACL,QAAQ,EACR,OAAO,EACP,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,eAAe,EAChB,MAAM,YAAY,CAAC;AAMpB,MAAM,CAAC,OAAO,OAAO,YAAY;IAEnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IADlC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAW;gBACH,KAAK,EAAE,KAAK;IAEzC,sCAAsC;IAChC,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;IAKpF,gCAAgC;IAC1B,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAKrG,uEAAuE;IACjE,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAKzG,uBAAuB;IACjB,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAKjH,0FAA0F;IACpF,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAK3H,sFAAsF;IAChF,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAK3H,uBAAuB;IACjB,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;CAIzF"}
@@ -0,0 +1,47 @@
1
+ import { handleResponse } from "./handleResponse.js";
2
+ const enc = encodeURIComponent;
3
+ // Judges: BYO LLM graders that score candidates/search hits against instructions
4
+ // and a structured output schema. Used standalone and to score Eval runs.
5
+ export default class JudgeService {
6
+ fetch;
7
+ path = `judge`;
8
+ constructor(fetch) {
9
+ this.fetch = fetch;
10
+ }
11
+ /** Lists the Judges in an Account. */
12
+ async list(account_name) {
13
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}`);
14
+ return handleResponse(response, async () => (await response.json()));
15
+ }
16
+ /** Retrieves a single Judge. */
17
+ async get(account_name, judge_name) {
18
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}/${enc(judge_name)}`);
19
+ return handleResponse(response, async () => (await response.json()));
20
+ }
21
+ /** Retrieves the status (and per-candidate results) of a Judge run. */
22
+ async runStatus(account_name, run_id) {
23
+ const response = await this.fetch.get(`${this.path}/${enc(account_name)}/run/${enc(run_id)}`);
24
+ return handleResponse(response, async () => (await response.json()));
25
+ }
26
+ /** Creates a Judge. */
27
+ async create(account_name, request) {
28
+ const response = await this.fetch.post(`${this.path}/${enc(account_name)}`, request);
29
+ return handleResponse(response, async () => (await response.json()));
30
+ }
31
+ /** Runs a Judge over explicit candidates or live search hits. Asynchronous (HTTP 202). */
32
+ async run(account_name, judge_name, request) {
33
+ const response = await this.fetch.post(`${this.path}/${enc(account_name)}/${enc(judge_name)}/run`, request);
34
+ return handleResponse(response, async () => (await response.json()));
35
+ }
36
+ /** Synchronously tries a Judge against a single candidate and returns its verdict. */
37
+ async try(account_name, judge_name, request) {
38
+ const response = await this.fetch.post(`${this.path}/${enc(account_name)}/${enc(judge_name)}/try`, request);
39
+ return handleResponse(response, async () => (await response.json()));
40
+ }
41
+ /** Deletes a Judge. */
42
+ async delete(account_name, judge_name) {
43
+ const response = await this.fetch.delete(`${this.path}/${enc(account_name)}/${enc(judge_name)}`);
44
+ return handleResponse(response, () => undefined);
45
+ }
46
+ }
47
+ //# sourceMappingURL=JudgeService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JudgeService.js","sourceRoot":"","sources":["../src/JudgeService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import Fetch from "./Fetch.js";
2
+ import { Response, Problem, ListResponse, ListIdentityResponse, ListRestoreResponse, CreateListRequest, UpdateListRequest } from "./Types.js";
3
+ export default class ListService {
4
+ private readonly fetch;
5
+ private readonly path;
6
+ constructor(fetch: Fetch);
7
+ /** Creates a List - a collection of related Search Results. */
8
+ create(request: CreateListRequest): Promise<Response<ListIdentityResponse, Problem>>;
9
+ /** Retrieves the details of a List. */
10
+ get(account_name: string, list_name: string): Promise<Response<ListResponse, Problem>>;
11
+ /** Edits List defaults and settings. */
12
+ edit(account_name: string, list_name: string, request: UpdateListRequest): Promise<Response<ListResponse, Problem>>;
13
+ /** Rolls a List forward to the content of a past version, producing a new version. */
14
+ restore(account_name: string, list_name: string, version: number): Promise<Response<ListRestoreResponse, Problem>>;
15
+ /** Permanently deletes a List. */
16
+ delete(account_name: string, list_name: string): Promise<Response<void, Problem>>;
17
+ }
18
+ //# sourceMappingURL=ListService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListService.d.ts","sourceRoot":"","sources":["../src/ListService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EACL,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAC1E,iBAAiB,EAAE,iBAAiB,EACrC,MAAM,YAAY,CAAC;AAEpB,MAAM,CAAC,OAAO,OAAO,WAAW;IAElB,OAAO,CAAC,QAAQ,CAAC,KAAK;IADlC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;gBACF,KAAK,EAAE,KAAK;IAEzC,+DAA+D;IACzD,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAK1F,uCAAuC;IACjC,GAAG,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAK5F,wCAAwC;IAClC,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAKzH,sFAAsF;IAChF,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;IAMxH,kCAAkC;IAC5B,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;CAIxF"}
@@ -0,0 +1,35 @@
1
+ import { handleResponse } from "./handleResponse.js";
2
+ export default class ListService {
3
+ fetch;
4
+ path = `list`;
5
+ constructor(fetch) {
6
+ this.fetch = fetch;
7
+ }
8
+ /** Creates a List - a collection of related Search Results. */
9
+ async create(request) {
10
+ const response = await this.fetch.post(this.path, request);
11
+ return handleResponse(response, async () => (await response.json()));
12
+ }
13
+ /** Retrieves the details of a List. */
14
+ async get(account_name, list_name) {
15
+ const response = await this.fetch.get(`${this.path}/${encodeURIComponent(account_name)}/${encodeURIComponent(list_name)}`);
16
+ return handleResponse(response, async () => (await response.json()));
17
+ }
18
+ /** Edits List defaults and settings. */
19
+ async edit(account_name, list_name, request) {
20
+ const response = await this.fetch.put(`${this.path}/${encodeURIComponent(account_name)}/${encodeURIComponent(list_name)}`, request);
21
+ return handleResponse(response, async () => (await response.json()));
22
+ }
23
+ /** Rolls a List forward to the content of a past version, producing a new version. */
24
+ async restore(account_name, list_name, version) {
25
+ const path = `${this.path}/restore/${encodeURIComponent(account_name)}/${encodeURIComponent(list_name)}/${version}`;
26
+ const response = await this.fetch.post(path, undefined);
27
+ return handleResponse(response, async () => (await response.json()));
28
+ }
29
+ /** Permanently deletes a List. */
30
+ async delete(account_name, list_name) {
31
+ const response = await this.fetch.delete(`${this.path}/${encodeURIComponent(account_name)}/${encodeURIComponent(list_name)}`);
32
+ return handleResponse(response, () => undefined);
33
+ }
34
+ }
35
+ //# sourceMappingURL=ListService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ListService.js","sourceRoot":"","sources":["../src/ListService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAMrD,MAAM,CAAC,OAAO,OAAO,WAAW;IAED;IADZ,IAAI,GAAG,MAAM,CAAC;IAC/B,YAA6B,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IAAG,CAAC;IAE7C,+DAA+D;IAC/D,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC3D,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAyB,CAAC,CAAC;IAC/F,CAAC;IAED,uCAAuC;IACvC,KAAK,CAAC,GAAG,CAAC,YAAoB,EAAE,SAAiB;QAC/C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3H,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC,CAAC;IACvF,CAAC;IAED,wCAAwC;IACxC,KAAK,CAAC,IAAI,CAAC,YAAoB,EAAE,SAAiB,EAAE,OAA0B;QAC5E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACpI,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAiB,CAAC,CAAC;IACvF,CAAC;IAED,sFAAsF;IACtF,KAAK,CAAC,OAAO,CAAC,YAAoB,EAAE,SAAiB,EAAE,OAAe;QACpE,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,YAAY,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,IAAI,OAAO,EAAE,CAAC;QACpH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACxD,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwB,CAAC,CAAC;IAC9F,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,MAAM,CAAC,YAAoB,EAAE,SAAiB;QAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9H,OAAO,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;CACF"}
@@ -0,0 +1,10 @@
1
+ import Fetch from "./Fetch.js";
2
+ import { Response, Problem, DeleteMediaResponse } from "./Types.js";
3
+ export default class MediaStoreService {
4
+ private readonly fetch;
5
+ private readonly path;
6
+ constructor(fetch: Fetch);
7
+ /** Permanently deletes a media item from a media store. */
8
+ deleteMedia(account_name: string, store_name: string, media_name: string): Promise<Response<DeleteMediaResponse, Problem>>;
9
+ }
10
+ //# sourceMappingURL=MediaStoreService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaStoreService.d.ts","sourceRoot":"","sources":["../src/MediaStoreService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEpE,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAExB,OAAO,CAAC,QAAQ,CAAC,KAAK;IADlC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;gBACT,KAAK,EAAE,KAAK;IAEzC,2DAA2D;IACrD,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;CAKjI"}
@@ -0,0 +1,15 @@
1
+ import { handleResponse } from "./handleResponse.js";
2
+ export default class MediaStoreService {
3
+ fetch;
4
+ path = `media-store`;
5
+ constructor(fetch) {
6
+ this.fetch = fetch;
7
+ }
8
+ /** Permanently deletes a media item from a media store. */
9
+ async deleteMedia(account_name, store_name, media_name) {
10
+ const path = `${this.path}/${encodeURIComponent(account_name)}/${encodeURIComponent(store_name)}/media/${encodeURIComponent(media_name)}`;
11
+ const response = await this.fetch.delete(path);
12
+ return handleResponse(response, async () => (await response.json()));
13
+ }
14
+ }
15
+ //# sourceMappingURL=MediaStoreService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MediaStoreService.js","sourceRoot":"","sources":["../src/MediaStoreService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAEP;IADZ,IAAI,GAAG,aAAa,CAAC;IACtC,YAA6B,KAAY;QAAZ,UAAK,GAAL,KAAK,CAAO;IAAG,CAAC;IAE7C,2DAA2D;IAC3D,KAAK,CAAC,WAAW,CAAC,YAAoB,EAAE,UAAkB,EAAE,UAAkB;QAC5E,MAAM,IAAI,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,kBAAkB,CAAC,YAAY,CAAC,IAAI,kBAAkB,CAAC,UAAU,CAAC,UAAU,kBAAkB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1I,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/C,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAwB,CAAC,CAAC;IAC9F,CAAC;CACF"}
@@ -0,0 +1,14 @@
1
+ import Fetch from "./Fetch.js";
2
+ import { Response, Problem, ResourceResponse, CreateResourceRequest, RenameResourceRequest } from "./Types.js";
3
+ export default class ResourceService {
4
+ private readonly fetch;
5
+ private readonly path;
6
+ constructor(fetch: Fetch);
7
+ /** Creates a Resource - a non-searchable, non-filterable field (commonly a URL). */
8
+ create(request: CreateResourceRequest): Promise<Response<ResourceResponse, Problem>>;
9
+ /** Renames a Resource. Breaking change - automatically updates the List version. */
10
+ rename(account_name: string, list_name: string, resource_name: string, request: RenameResourceRequest): Promise<Response<ResourceResponse, Problem>>;
11
+ /** Removes a Resource. Breaking change - automatically updates the List version. */
12
+ remove(account_name: string, list_name: string, resource_name: string): Promise<Response<void, Problem>>;
13
+ }
14
+ //# sourceMappingURL=ResourceService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceService.d.ts","sourceRoot":"","sources":["../src/ResourceService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAE/G,MAAM,CAAC,OAAO,OAAO,eAAe;IAEtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IADlC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAc;gBACN,KAAK,EAAE,KAAK;IAEzC,oFAAoF;IAC9E,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAK1F,oFAAoF;IAC9E,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IAM1J,oFAAoF;IAC9E,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;CAK/G"}