@faiber/faiber-reservation 0.24.0 → 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.
package/README.md CHANGED
@@ -27,12 +27,25 @@ const slots = await api.availableSlots({
27
27
  service_id: 8,
28
28
  date: "2026-07-22",
29
29
  });
30
- await api.setSchedules(42, { schedules });
30
+ await api.setSchedules(42, {
31
+ schedules: [{ day_of_week: "monday", start_time: "09:00", end_time: "12:00" }],
32
+ });
33
+ const generated = await api.generateSlots({
34
+ provider_id: 42, service_id: 8,
35
+ from_date: "2026-11-02", to_date: "2026-11-02",
36
+ });
37
+ console.log(generated.data.data); // number of newly generated rows
38
+ const booking = await api.reservations.create({
39
+ time_slot_id: 73,
40
+ user_id: "00000000-0000-4000-8000-000000000042", // actual IDP customer UUID
41
+ notes: "Consultation",
42
+ });
43
+ await api.reservations.delete(booking.data.data.id); // cancel; data:null
31
44
  ```
32
45
 
33
46
  ## Complete capability
34
47
 
35
- This package exposes 29 registered operations from the reservations service. Common workflows have concise methods on `api`; every registered backend route is also available as a named function on `api.operations`. Generated operation input, query, response, path, verb, and permission contracts are exported from `operations.types`.
48
+ This package exposes 30 source-mounted operations from the reservations service. Common workflows have concise methods on `api`; every registered backend route is also available as a named function on `api.operations`. Generated operation input, query, response, path, verb, and permission contracts are exported from `operations.types`.
36
49
 
37
50
  | Area | Operations | HTTP methods |
38
51
  |---|---:|---|
@@ -44,11 +57,15 @@ This package exposes 29 registered operations from the reservations service. Com
44
57
  | `time-slot` | 5 | `DELETE`, `GET`, `PATCH`, `POST` |
45
58
  | `work-schedule` | 2 | `GET`, `PUT` |
46
59
 
47
- Dates are ISO-8601 at the API boundary. Local calendar conversion belongs in application presentation code.
60
+ Provider, service, slot and reservation IDs are local numbers; customer and linked provider `user_id` values are IDP UUID strings. Booking creation takes `time_slot_id`, `user_id` and optional `notes`; it derives provider/service from the existing slot. Provider capacity defaults to 1 and active flags use `is_active`.
61
+
62
+ Catalog/provider/booking lists return `{status,message,data:{data:[...],meta:{page,page_size,total_items,total_pages}}}`. Availability, schedules and assigned services return unpaged arrays in `data`. Booking list/show/update currently return `starts_at:null`; read its slot for the interval. Creation includes the slot start time. Null/omitted patch text fields preserve their existing values.
63
+
64
+ Schedules use weekday names, `start_time`/`end_time` in `HH:MM`, and optional `is_active`. Setting schedules replaces the entire set; an empty array clears it. Appointment timestamps are RFC3339 and date filters are UTC `YYYY-MM-DD`. Local calendar conversion belongs in application presentation code.
48
65
 
49
66
  ## Authentication and authorization
50
67
 
51
- Use a `TokenProvider` to forward the signed-in user's Bearer token, or enable `withCredentials` for secure HttpOnly cookie sessions. Permission requirements copied from service route guards are included in each operation's JSDoc. The SDK does not embed API keys, credentials, localhost URLs, sandbox hosts, or production hosts.
68
+ Use a `TokenProvider` to forward the signed-in user's Bearer token, or enable `withCredentials` for secure HttpOnly cookie sessions. The mounted service middleware requires a trusted non-nil current user, organization context and matching resource/action or accepted reservation manage grant for management operations. Health, OpenAPI, availability and Flow metadata GETs are public. Each operation documents its accepted grants. The SDK does not embed API keys, credentials, localhost URLs, sandbox hosts, or production hosts.
52
69
 
53
70
  ## Inputs, queries, responses, and transport
54
71
 
@@ -67,3 +84,29 @@ try {
67
84
  ```
68
85
 
69
86
  Use `@faiber/faiber-ts-sdk` when one application needs multiple Faiber services with one configuration.
87
+
88
+ ### Capacity, time and retained history
89
+
90
+ Providers have `capacity`1..1000 (default1), shared across overlapping appointments
91
+ for all their service offerings. Generation creates distinct single-claim slot IDs;
92
+ do not merge them by timestamp or use `is_reserved` updates to make/release bookings.
93
+ `operations.providerCapacityReportGet(providerId, {"page[number]":1,"page[size]":20})`
94
+ returns a locked snapshot with capacity, current/future peak, observed time and paged
95
+ legacy conflict windows. It does not reserve admission; booking checks capacity again.
96
+
97
+ Dates in availability/generation are strict UTC `YYYY-MM-DD`; appointment timestamps
98
+ are RFC3339. Pagination uses bracketed keys and defaults1/20 with page size1..100.
99
+ Invalid bounds/statuses/dates fail; generations are bounded, atomic and repeatable.
100
+
101
+ Cancellation uses DELETE but retains booking history and returns `{status,message,data:null}`.
102
+ Repeated cancellation succeeds without releasing a newer booking of the same slot.
103
+ Provider/service/slot deletion can return409 to protect claims or history. Unit-valued
104
+ association/deletion receipts also carry `data:null`. Read the booking afterward when
105
+ its updated state is needed. Public availability excludes legacy user-held slots.
106
+
107
+ Management calls require a trusted non-nil current user and organization header,
108
+ plus the source's matching resource/action or accepted reservation manage grant.
109
+ A role label alone does not authorize an action. Instances rely on their trusted
110
+ single-project routing boundary; clients must not invent organization identity.
111
+ Customer UUID existence and project membership require the canonical IDP lookup;
112
+ these local SDK tests do not establish live gateway or cross-service identity binding.
package/dist/.tsbuildinfo CHANGED
@@ -1 +1 @@
1
- {"fileNames":["../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es5.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2016.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2018.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2019.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2021.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.dom.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.decorators.d.ts","../../../../../../../faiber-ts-sdk/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../../../../faiber-ts-sdk/node_modules/axios/index.d.ts","../../core/dist/types.d.ts","../../core/dist/env.d.ts","../../core/dist/auth.d.ts","../../core/dist/client.d.ts","../../core/dist/resource.d.ts","../../core/dist/openapi.d.ts","../../core/dist/realtime.d.ts","../../core/dist/index.d.ts","../src/types.ts","../src/operations.types.ts","../src/operations.ts","../src/index.ts"],"fileIdsList":[[61],[60,61],[60,61,62,63,64,65,66,67],[60,61,64],[60],[68,69,70,71],[68,70],[68]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"2343ec253c90c370449755739733f5f429f58cffdb51a50977bb4a042012fa8f","impliedFormat":99},{"version":"6cc1f17dc5454eb1112cfb4a2e2ddc93de8c3f9016c8db7bdf0328caac374ffa","impliedFormat":99},{"version":"82065c5512d8d6f81b26cf13ea9ecd3e558be9560f7b5c62260858219ecd87f7","impliedFormat":99},{"version":"ed17ed1b2bcf384c88bc6cec6b427989b98db99fc7ad35a50605501a463bbc53","impliedFormat":99},{"version":"82bf4efcca8ab8764a91ac126c0af605ab6717ee94b2316461b5fa388b27e165","impliedFormat":99},{"version":"74d1d74d5dadbbb70e8e294d3419c58885629a9fc95141cbf158a3febb523300","impliedFormat":99},{"version":"3f5eeb0a84713ccf640b9a6af4629e006f59d7629abc3fc95af2efb062fd0b83","impliedFormat":99},{"version":"ac62f6b0f2e963ea9a251ee8384e64cebe0fe4acd32ca177d838d7c5a7ad2b43","impliedFormat":99},{"version":"fdd1b5a8a2b98f82c94e4dc4e3b207ca81766b656d23acd3c7458fffd9af21dd","impliedFormat":99},{"version":"0a55b14665eb66259a41d2fc9212479fbc3ba0b618590071407ac33bb62a8164","signature":"99982d6d948fd1545be1c735b7e92a30d4fc854f9b7e54c4a6afbb9a76cbd980","impliedFormat":99},{"version":"2604ba250aedb92b8894a852a247c1de0a4937df41832f836d3213285ab17ec7","signature":"75232fe0d4a4098d915400994d28042408b6a43297c959621f1149750974c896","impliedFormat":99},{"version":"d8d07d65dcb8f7310b09cae04001501e689eda6e587e3cc73c800353fa892f39","signature":"d2010c1809a7f7434abb68536477b7ee64c96896e3b462ff155440ae404800c1","impliedFormat":99},{"version":"833b6f8e2ffc4eb8f1e1b673f47dcaaafbdd0fce4f12e6bed6122bd415284697","signature":"ef28ea82b3ac2f3427b9e9ea947fa0fa68adebb4864330c0b70ff14de8b8e5b8","impliedFormat":99}],"root":[[69,72]],"options":{"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noUncheckedIndexedAccess":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[63,1],[64,2],[62,1],[68,3],[66,4],[65,4],[61,5],[72,6],[71,7],[70,8],[69,8]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
1
+ {"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/contracts.types.ts","../../../node_modules/axios/index.d.ts","../../core/dist/types.d.ts","../../core/dist/env.d.ts","../../core/dist/auth.d.ts","../../core/dist/client.d.ts","../../core/dist/resource.d.ts","../../core/dist/openapi.d.ts","../../core/dist/realtime.d.ts","../../core/dist/summary-access.d.ts","../../core/dist/index.d.ts","../src/operations.types.ts","../src/types.ts","../src/operations.ts","../src/index.ts"],"fileIdsList":[[62],[61,62],[61,62,63,64,65,66,67,68,69],[61,62,65],[61],[60,70,71,72,73],[70,71],[60,70],[71]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2e80ee7a49e8ac312cc11b77f1475804bee36b3b2bc896bead8b6e1266befb43","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"41f1edcc67636f7c7ff4f8542e54fd1dbe06c1c6e8bc92a3d6ef2b88b14fdc5e","signature":"6242a358630045030e8da0ed32a4e8e7185aaf53968ce16db00b879b72467119","impliedFormat":99},{"version":"2368a31d44ccc59758e3b3c682fee74e820b08fad98623905a85092018c06e3b","impliedFormat":99},{"version":"61806e75fc22177d65d9b33c90c4b88e4370abd4dd88d8196ca0fc87d7702fe9","impliedFormat":99},{"version":"82065c5512d8d6f81b26cf13ea9ecd3e558be9560f7b5c62260858219ecd87f7","impliedFormat":99},{"version":"ed17ed1b2bcf384c88bc6cec6b427989b98db99fc7ad35a50605501a463bbc53","impliedFormat":99},{"version":"82bf4efcca8ab8764a91ac126c0af605ab6717ee94b2316461b5fa388b27e165","impliedFormat":99},{"version":"e8345259c97aa6b8a84b27963fff00e79b7f45852b0024fffc52c9a7949007ac","impliedFormat":99},{"version":"3f5eeb0a84713ccf640b9a6af4629e006f59d7629abc3fc95af2efb062fd0b83","impliedFormat":99},{"version":"ac62f6b0f2e963ea9a251ee8384e64cebe0fe4acd32ca177d838d7c5a7ad2b43","impliedFormat":99},{"version":"967088f3793139562bc3fd0e5db990a8bc2885f7444a1f10ea6a5a6479fa6d40","impliedFormat":99},{"version":"6756b343720142c0f4f0c62b8194eefdea2d1774da6f7902bee9e39d4e81c9d4","impliedFormat":99},{"version":"5f34f2b6fc2b948728697caded2d51401a50cf3119448deb13fa39ba930bffc3","signature":"bbfca8a8847ab9fe2fb9877e0fb98f1264e73897b1de879c00d3d8934784a25f","impliedFormat":99},{"version":"cc62ec3c494ae40e6e0d24ecf69d261ac84c37ba8b048c45512e5faa6e205a43","signature":"8675b5ad718b6ec812efdd52a17ad7be70d907c6da5ade3ec06da31199fccb01","impliedFormat":99},{"version":"d7687f8d3fbf7e0199681d0ab863d5a1a164ae01c8c1dc74221b4744d607d3bf","signature":"39de16c13ff9118d29c38dcd17e79c9c575e767d972a3b357f5a77c357147776","impliedFormat":99},{"version":"a02910e05621ad4733376e609f8fba0e0d3b4162a26d2a50a2dd4ded6496b7b2","signature":"aa379a7b409d3278b898ee8b989b78df775c6a37b15575a24e938427b119f781","impliedFormat":99}],"root":[60,[71,74]],"options":{"composite":true,"declaration":true,"declarationMap":true,"exactOptionalPropertyTypes":true,"module":199,"noUncheckedIndexedAccess":true,"outDir":"./","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"target":9,"tsBuildInfoFile":"./.tsbuildinfo","verbatimModuleSyntax":true},"referencedMap":[[64,1],[65,2],[63,1],[70,3],[67,4],[66,4],[62,5],[74,6],[73,7],[71,8],[72,9]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.3"}
@@ -0,0 +1,28 @@
1
+ /** Reservation success shape; unit-valued mutations return data:null, not an object. */
2
+ export interface ReservationSuccess<T> {
3
+ status: "success";
4
+ message: string;
5
+ data: T;
6
+ }
7
+ export type ReservationMutationReceipt = ReservationSuccess<null>;
8
+ export type ReservationProcessHealthResponse = ReservationSuccess<{
9
+ version: string;
10
+ }>;
11
+ /** Field metadata from locked infera-flow-sdk c9fbf8dde6f9a843b55f7a05c3ae37eff40b20d1. */
12
+ export interface ReservationIntegrationField {
13
+ name: string;
14
+ field_type: string;
15
+ required: boolean;
16
+ description: string;
17
+ }
18
+ export interface ReservationIntegrationEvent {
19
+ event_name: string;
20
+ payload_fields: ReservationIntegrationField[];
21
+ }
22
+ /** Public metadata only; current Reservation implementation advertises an empty events array. */
23
+ export interface ReservationFlowIntegration {
24
+ queue: string;
25
+ events: ReservationIntegrationEvent[];
26
+ }
27
+ export type ReservationFlowIntegrationResponse = ReservationSuccess<ReservationFlowIntegration>;
28
+ //# sourceMappingURL=contracts.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.types.d.ts","sourceRoot":"","sources":["../src/contracts.types.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,WAAW,kBAAkB,CAAC,CAAC;IAAG,MAAM,EAAC,SAAS,CAAC;IAAA,OAAO,EAAC,MAAM,CAAC;IAAA,IAAI,EAAC,CAAC,CAAA;CAAC;AAC/E,MAAM,MAAM,0BAA0B,GAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;AAChE,MAAM,MAAM,gCAAgC,GAAC,kBAAkB,CAAC;IAAC,OAAO,EAAC,MAAM,CAAA;CAAC,CAAC,CAAC;AAElF,2FAA2F;AAC3F,MAAM,WAAW,2BAA2B;IAAE,IAAI,EAAC,MAAM,CAAC;IAAA,UAAU,EAAC,MAAM,CAAC;IAAA,QAAQ,EAAC,OAAO,CAAC;IAAA,WAAW,EAAC,MAAM,CAAA;CAAC;AAChH,MAAM,WAAW,2BAA2B;IAAE,UAAU,EAAC,MAAM,CAAC;IAAA,cAAc,EAAC,2BAA2B,EAAE,CAAA;CAAC;AAC7G,iGAAiG;AACjG,MAAM,WAAW,0BAA0B;IAAE,KAAK,EAAC,MAAM,CAAC;IAAA,MAAM,EAAC,2BAA2B,EAAE,CAAA;CAAC;AAC/F,MAAM,MAAM,kCAAkC,GAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=contracts.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.types.js","sourceRoot":"","sources":["../src/contracts.types.ts"],"names":[],"mappings":""}
package/dist/index.d.ts CHANGED
@@ -1,24 +1,39 @@
1
- import { RestResource, ServiceApi, type Identifier, type QueryParams, type RequestOptions } from "@faiber/sdk-core";
1
+ import { RestResource, ServiceApi, type Identifier, type RequestOptions } from "@faiber/sdk-core";
2
2
  import type * as T from "./types.js";
3
3
  import { ReservationOperations } from "./operations.js";
4
+ /** Reservation transport; management methods require trusted user/organization and resource/action permission. */
4
5
  export declare class ReservationApi extends ServiceApi {
5
6
  readonly operations: ReservationOperations;
6
- readonly services: RestResource<T.BookableService, T.CreateBookableServiceInput, T.UpdateBookableServiceInput, T.ServiceListResponse, T.ServiceResponse, import("@faiber/sdk-core").PageQuery>;
7
- readonly providers: RestResource<T.Provider, T.CreateProviderInput, T.UpdateProviderInput, T.ProviderListResponse, T.ProviderResponse, import("@faiber/sdk-core").PageQuery>;
8
- readonly reservations: RestResource<T.Reservation, T.CreateReservationInput, T.UpdateReservationInput, T.ReservationListResponse, T.ReservationResponse, import("@faiber/sdk-core").PageQuery>;
9
- availableSlots(params?: QueryParams, options?: RequestOptions): Promise<import("axios").AxiosResponse<T.AvailableSlotsResponse, any, {}>>;
10
- generateSlots(data: T.GenerateSlotsInput, options?: RequestOptions<T.GenerateSlotsInput>): Promise<import("axios").AxiosResponse<T.GenerateSlotsResponse, T.GenerateSlotsInput, {}>>;
11
- slot(id: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<T.TimeSlotResponse, any, {}>>;
12
- updateSlot(id: Identifier, data: T.UpdateTimeSlotInput, options?: RequestOptions<T.UpdateTimeSlotInput>): Promise<import("axios").AxiosResponse<T.TimeSlotResponse, T.UpdateTimeSlotInput, {}>>;
13
- deleteSlot(id: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<T.DeleteTimeSlotResponse, any, {}>>;
14
- schedules(providerId: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<T.SchedulesResponse, any, {}>>;
15
- setSchedules(providerId: Identifier, data: T.SetSchedulesInput, options?: RequestOptions<T.SetSchedulesInput>): Promise<import("axios").AxiosResponse<T.SchedulesResponse, T.SetSchedulesInput, {}>>;
16
- assignService(providerId: Identifier, data: T.AssignServiceInput, options?: RequestOptions<T.AssignServiceInput>): Promise<import("axios").AxiosResponse<T.AssignServiceResponse, T.AssignServiceInput, {}>>;
17
- providerServices(providerId: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<T.ServiceListResponse, any, {}>>;
18
- removeService(providerId: Identifier, serviceId: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<T.AssignServiceResponse, any, {}>>;
7
+ /** Service catalog: paged list, read/create/patch/delete. Requires service action/manage grant; missing 404, referenced deletion 409. */
8
+ readonly services: RestResource<import("./operations.types.js").ReservationServiceShowGetResponseData, import("./operations.types.js").ReservationServiceStorePostInput, import("./operations.types.js").ReservationServiceUpdatePatchInput, import("./operations.types.js").ReservationServiceIndexGetResponse, import("./operations.types.js").ReservationServiceShowGetResponse, import("./operations.types.js").ReservationServiceIndexGetQuery, import("./contracts.types.js").ReservationMutationReceipt>;
9
+ /** Providers: paged list, read/create/patch/delete. Requires provider action/manage grant; capacity below occupancy or retained history 409. */
10
+ readonly providers: RestResource<import("./operations.types.js").ProviderShowGetResponseData, import("./operations.types.js").ProviderStorePostInput, import("./operations.types.js").ProviderUpdatePatchInput, import("./operations.types.js").ProviderIndexGetResponse, import("./operations.types.js").ProviderShowGetResponse, import("./operations.types.js").ProviderIndexGetQuery, import("./contracts.types.js").ReservationMutationReceipt>;
11
+ /** Bookings: filtered paged list, read/create/patch/cancel. Requires reservation action/manage grant; claim/full or invalid transition 409. Delete retains history and returns data:null. */
12
+ readonly reservations: RestResource<import("./operations.types.js").ReservationShowGetResponseData, import("./operations.types.js").ReservationStorePostInput, import("./operations.types.js").ReservationUpdatePatchInput, import("./operations.types.js").ReservationIndexGetResponse, import("./operations.types.js").ReservationShowGetResponse, import("./operations.types.js").ReservationIndexGetQuery, import("./contracts.types.js").ReservationMutationReceipt>;
13
+ /** Public advisory availability, unpaged; optional numeric filters and strict UTC YYYY-MM-DD. Returns slots; malformed date 400. */
14
+ availableSlots(params?: T.AvailableSlotsQuery, options?: RequestOptions): Promise<import("axios").AxiosResponse<import("./operations.types.js").TimeSlotAvailableGetResponse, any, {}, any>>;
15
+ /** Generate capacity-many slots atomically for inclusive UTC dates. Requires slot:create/manage; returns numeric count, invalid configuration 400, missing relation 404. */
16
+ generateSlots(data: T.GenerateSlotsInput, options?: RequestOptions<T.GenerateSlotsInput>): Promise<import("axios").AxiosResponse<import("./operations.types.js").TimeSlotGeneratePostResponse, import("./operations.types.js").TimeSlotGeneratePostInput, {}, any>>;
17
+ /** Read numeric slot; requires slot:read/manage; missing 404. Returns RFC3339 interval and claim fields. */
18
+ slot(id: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<import("./operations.types.js").TimeSlotShowGetResponse, any, {}, any>>;
19
+ /** Patch slot structure; requires slot:update/manage. Returns slot; claimed/history edits or independent claim toggles 409, invalid interval 400. */
20
+ updateSlot(id: Identifier, data: T.UpdateTimeSlotInput, options?: RequestOptions<T.UpdateTimeSlotInput>): Promise<import("axios").AxiosResponse<import("./operations.types.js").TimeSlotShowGetResponse, import("./operations.types.js").TimeSlotUpdatePatchInput, {}, any>>;
21
+ /** Delete numeric slot; requires slot:delete/manage. Returns data:null; missing 404, retained history or claim 409. */
22
+ deleteSlot(id: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<import("./contracts.types.js").ReservationMutationReceipt, any, {}, any>>;
23
+ /** Read unpaged schedules with lowercase weekday and HH:MM times; requires provider:read/manage. Missing provider may yield []. */
24
+ schedules(providerId: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<import("./operations.types.js").WorkScheduleIndexGetResponse, any, {}, any>>;
25
+ /** Replace all schedules atomically; [] clears. Requires provider:update/manage; invalid weekday/time 400, missing provider 404; returns schedules. */
26
+ setSchedules(providerId: Identifier, data: T.SetSchedulesInput, options?: RequestOptions<T.SetSchedulesInput>): Promise<import("axios").AxiosResponse<import("./operations.types.js").WorkScheduleIndexGetResponse, import("./operations.types.js").WorkScheduleUpsertPutInput, {}, any>>;
27
+ /** Assign numeric service ID to provider; requires provider:create/manage. Returns data:null; existing/missing relation 409. */
28
+ assignService(providerId: Identifier, data: T.AssignServiceInput, options?: RequestOptions<T.AssignServiceInput>): Promise<import("axios").AxiosResponse<import("./contracts.types.js").ReservationMutationReceipt, import("./operations.types.js").ProviderAssignServicePostInput, {}, any>>;
29
+ /** Read unpaged assigned services; requires provider:read/manage. Missing provider may yield []; no pagination envelope. */
30
+ providerServices(providerId: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<import("./operations.types.js").ProviderListServicesGetResponse, any, {}, any>>;
31
+ /** Remove assignment without removing slots/history; requires provider:delete/manage. Absent assignment succeeds with data:null. */
32
+ removeService(providerId: Identifier, serviceId: Identifier, options?: RequestOptions): Promise<import("axios").AxiosResponse<import("./contracts.types.js").ReservationMutationReceipt, any, {}, any>>;
19
33
  }
20
34
  export * from "./types.js";
21
35
  export * from "@faiber/sdk-core";
22
36
  export * from "./operations.js";
23
37
  export * from "./operations.types.js";
38
+ export * from "./contracts.types.js";
24
39
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACpH,OAAO,KAAK,KAAK,CAAC,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,qBAAa,cAAe,SAAQ,UAAU;IAC1C,QAAQ,CAAC,UAAU,wBAA0C;IAC7D,QAAQ,CAAC,QAAQ,8KAA6O;IAC9P,QAAQ,CAAC,SAAS,2JAA2N;IAC7O,QAAQ,CAAC,YAAY,0KAA6O;IAClQ,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,cAAc;IAC7D,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC;IACxF,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IAC7C,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACvG,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IACnD,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IAC1D,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC7G,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAChH,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IACjE,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;CACxF;AACD,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,KAAK,KAAK,CAAC,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,kHAAkH;AAClH,qBAAa,cAAe,SAAQ,UAAU;IAC1C,QAAQ,CAAC,UAAU,wBAA0C;IAC7D,yIAAyI;IACzI,QAAQ,CAAC,QAAQ,+dAA4T;IAC7U,gJAAgJ;IAChJ,QAAQ,CAAC,SAAS,maAA2S;IAC7T,6LAA6L;IAC7L,QAAQ,CAAC,YAAY,qbAAgU;IACrV,oIAAoI;IACpI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc;IACvE,4KAA4K;IAC5K,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC;IACxF,4GAA4G;IAC5G,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IAC7C,qJAAqJ;IACrJ,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,mBAAmB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACvG,uHAAuH;IACvH,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IACnD,mIAAmI;IACnI,SAAS,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IAC1D,uJAAuJ;IACvJ,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC;IAC7G,gIAAgI;IAChI,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAChH,4HAA4H;IAC5H,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;IACjE,oIAAoI;IACpI,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,cAAc;CACxF;AACD,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,23 +1,38 @@
1
1
  import { RestResource, ServiceApi } from "@faiber/sdk-core";
2
2
  import { ReservationOperations } from "./operations.js";
3
+ /** Reservation transport; management methods require trusted user/organization and resource/action permission. */
3
4
  export class ReservationApi extends ServiceApi {
4
5
  operations = new ReservationOperations(this.client);
6
+ /** Service catalog: paged list, read/create/patch/delete. Requires service action/manage grant; missing 404, referenced deletion 409. */
5
7
  services = new RestResource(this.client, "/api/v1/services", { supported: ["list", "show", "create", "update", "delete"] });
8
+ /** Providers: paged list, read/create/patch/delete. Requires provider action/manage grant; capacity below occupancy or retained history 409. */
6
9
  providers = new RestResource(this.client, "/api/v1/providers", { supported: ["list", "show", "create", "update", "delete"] });
10
+ /** Bookings: filtered paged list, read/create/patch/cancel. Requires reservation action/manage grant; claim/full or invalid transition 409. Delete retains history and returns data:null. */
7
11
  reservations = new RestResource(this.client, "/api/v1/reservations", { supported: ["list", "show", "create", "update", "delete"] });
12
+ /** Public advisory availability, unpaged; optional numeric filters and strict UTC YYYY-MM-DD. Returns slots; malformed date 400. */
8
13
  availableSlots(params, options) { return this.client.get("/api/v1/slots/available", params, options); }
14
+ /** Generate capacity-many slots atomically for inclusive UTC dates. Requires slot:create/manage; returns numeric count, invalid configuration 400, missing relation 404. */
9
15
  generateSlots(data, options) { return this.client.post("/api/v1/slots", data, options); }
16
+ /** Read numeric slot; requires slot:read/manage; missing 404. Returns RFC3339 interval and claim fields. */
10
17
  slot(id, options) { return this.client.get(`/api/v1/slots/${encodeURIComponent(id)}`, undefined, options); }
18
+ /** Patch slot structure; requires slot:update/manage. Returns slot; claimed/history edits or independent claim toggles 409, invalid interval 400. */
11
19
  updateSlot(id, data, options) { return this.client.patch(`/api/v1/slots/${encodeURIComponent(id)}`, data, options); }
20
+ /** Delete numeric slot; requires slot:delete/manage. Returns data:null; missing 404, retained history or claim 409. */
12
21
  deleteSlot(id, options) { return this.client.delete(`/api/v1/slots/${encodeURIComponent(id)}`, options); }
22
+ /** Read unpaged schedules with lowercase weekday and HH:MM times; requires provider:read/manage. Missing provider may yield []. */
13
23
  schedules(providerId, options) { return this.client.get(`/api/v1/providers/${encodeURIComponent(providerId)}/schedules`, undefined, options); }
24
+ /** Replace all schedules atomically; [] clears. Requires provider:update/manage; invalid weekday/time 400, missing provider 404; returns schedules. */
14
25
  setSchedules(providerId, data, options) { return this.client.put(`/api/v1/providers/${encodeURIComponent(providerId)}/schedules`, data, options); }
26
+ /** Assign numeric service ID to provider; requires provider:create/manage. Returns data:null; existing/missing relation 409. */
15
27
  assignService(providerId, data, options) { return this.client.post(`/api/v1/providers/${encodeURIComponent(providerId)}/services`, data, options); }
28
+ /** Read unpaged assigned services; requires provider:read/manage. Missing provider may yield []; no pagination envelope. */
16
29
  providerServices(providerId, options) { return this.client.get(`/api/v1/providers/${encodeURIComponent(providerId)}/services`, undefined, options); }
30
+ /** Remove assignment without removing slots/history; requires provider:delete/manage. Absent assignment succeeds with data:null. */
17
31
  removeService(providerId, serviceId, options) { return this.client.delete(`/api/v1/providers/${encodeURIComponent(providerId)}/services/${encodeURIComponent(serviceId)}`, options); }
18
32
  }
19
33
  export * from "./types.js";
20
34
  export * from "@faiber/sdk-core";
21
35
  export * from "./operations.js";
22
36
  export * from "./operations.types.js";
37
+ export * from "./contracts.types.js";
23
38
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAwC,MAAM,kBAAkB,CAAC;AAElG,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,kHAAkH;AAClH,MAAM,OAAO,cAAe,SAAQ,UAAU;IACjC,UAAU,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC7D,yIAAyI;IAChI,QAAQ,GAAG,IAAI,YAAY,CAAyM,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7U,gJAAgJ;IACvI,SAAS,GAAG,IAAI,YAAY,CAAuL,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7T,6LAA6L;IACpL,YAAY,GAAG,IAAI,YAAY,CAAyM,IAAI,CAAC,MAAM,EAAE,sBAAsB,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrV,oIAAoI;IACpI,cAAc,CAAC,MAA8B,EAAE,OAAwB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA2B,yBAAyB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC1K,4KAA4K;IAC5K,aAAa,CAAC,IAA0B,EAAE,OAA8C,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAgD,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACrM,4GAA4G;IAC5G,IAAI,CAAC,EAAc,EAAE,OAAwB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAqB,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7J,qJAAqJ;IACrJ,UAAU,CAAC,EAAc,EAAE,IAA2B,EAAE,OAA+C,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAA4C,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3O,uHAAuH;IACvH,UAAU,CAAC,EAAc,EAAE,OAAwB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAA2B,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACjK,mIAAmI;IACnI,SAAS,CAAC,UAAsB,EAAE,OAAwB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAsB,qBAAqB,kBAAkB,CAAC,UAAU,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACjM,uJAAuJ;IACvJ,YAAY,CAAC,UAAsB,EAAE,IAAyB,EAAE,OAA6C,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA2C,qBAAqB,kBAAkB,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpQ,gIAAgI;IAChI,aAAa,CAAC,UAAsB,EAAE,IAA0B,EAAE,OAA8C,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAgD,qBAAqB,kBAAkB,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5Q,4HAA4H;IAC5H,gBAAgB,CAAC,UAAsB,EAAE,OAAwB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAA6B,qBAAqB,kBAAkB,CAAC,UAAU,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9M,oIAAoI;IACpI,aAAa,CAAC,UAAsB,EAAE,SAAqB,EAAE,OAAwB,IAAI,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAA0B,qBAAqB,kBAAkB,CAAC,UAAU,CAAC,aAAa,kBAAkB,CAAC,SAAS,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;CAC3P;AACD,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AAEtC,cAAc,sBAAsB,CAAC"}