@de./types 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/dist/api.d.ts +113 -0
- package/dist/api.d.ts.map +1 -0
- package/dist/api.js +92 -0
- package/dist/api.js.map +1 -0
- package/dist/auth.d.ts +109 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +80 -0
- package/dist/auth.js.map +1 -0
- package/dist/aux/agent-rvs.d.ts +1205 -0
- package/dist/aux/agent-rvs.d.ts.map +1 -0
- package/dist/aux/agent-rvs.js +444 -0
- package/dist/aux/agent-rvs.js.map +1 -0
- package/dist/aux/agents.d.ts +1573 -0
- package/dist/aux/agents.d.ts.map +1 -0
- package/dist/aux/agents.js +487 -0
- package/dist/aux/agents.js.map +1 -0
- package/dist/aux/customer-rvs.d.ts +711 -0
- package/dist/aux/customer-rvs.d.ts.map +1 -0
- package/dist/aux/customer-rvs.js +321 -0
- package/dist/aux/customer-rvs.js.map +1 -0
- package/dist/aux/customers.d.ts +379 -0
- package/dist/aux/customers.d.ts.map +1 -0
- package/dist/aux/customers.js +67 -0
- package/dist/aux/customers.js.map +1 -0
- package/dist/aux/index.d.ts +5 -0
- package/dist/aux/index.d.ts.map +1 -0
- package/dist/aux/index.js +21 -0
- package/dist/aux/index.js.map +1 -0
- package/dist/billing.d.ts +367 -0
- package/dist/billing.d.ts.map +1 -0
- package/dist/billing.js +308 -0
- package/dist/billing.js.map +1 -0
- package/dist/bucket.d.ts +97 -0
- package/dist/bucket.d.ts.map +1 -0
- package/dist/bucket.js +52 -0
- package/dist/bucket.js.map +1 -0
- package/dist/context.d.ts +148 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +148 -0
- package/dist/context.js.map +1 -0
- package/dist/csp/analytics.d.ts +270 -0
- package/dist/csp/analytics.d.ts.map +1 -0
- package/dist/csp/analytics.js +185 -0
- package/dist/csp/analytics.js.map +1 -0
- package/dist/csp/base.d.ts +11 -0
- package/dist/csp/base.d.ts.map +1 -0
- package/dist/csp/base.js +17 -0
- package/dist/csp/base.js.map +1 -0
- package/dist/csp/index.d.ts +107 -0
- package/dist/csp/index.d.ts.map +1 -0
- package/dist/csp/index.js +48 -0
- package/dist/csp/index.js.map +1 -0
- package/dist/csp/inventory.d.ts +361 -0
- package/dist/csp/inventory.d.ts.map +1 -0
- package/dist/csp/inventory.js +267 -0
- package/dist/csp/inventory.js.map +1 -0
- package/dist/csp/order.d.ts +1457 -0
- package/dist/csp/order.d.ts.map +1 -0
- package/dist/csp/order.js +367 -0
- package/dist/csp/order.js.map +1 -0
- package/dist/csp/webhook.d.ts +381 -0
- package/dist/csp/webhook.d.ts.map +1 -0
- package/dist/csp/webhook.js +207 -0
- package/dist/csp/webhook.js.map +1 -0
- package/dist/de.profile.d.ts +411 -0
- package/dist/de.profile.d.ts.map +1 -0
- package/dist/de.profile.js +98 -0
- package/dist/de.profile.js.map +1 -0
- package/dist/dev/developer.d.ts +211 -0
- package/dist/dev/developer.d.ts.map +1 -0
- package/dist/dev/developer.js +55 -0
- package/dist/dev/developer.js.map +1 -0
- package/dist/dev/index.d.ts +133 -0
- package/dist/dev/index.d.ts.map +1 -0
- package/dist/dev/index.js +79 -0
- package/dist/dev/index.js.map +1 -0
- package/dist/entity.d.ts +159 -0
- package/dist/entity.d.ts.map +1 -0
- package/dist/entity.js +127 -0
- package/dist/entity.js.map +1 -0
- package/dist/events.d.ts +1844 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +303 -0
- package/dist/events.js.map +1 -0
- package/dist/faq.d.ts +60 -0
- package/dist/faq.d.ts.map +1 -0
- package/dist/faq.js +31 -0
- package/dist/faq.js.map +1 -0
- package/dist/geo.d.ts +123 -0
- package/dist/geo.d.ts.map +1 -0
- package/dist/geo.js +87 -0
- package/dist/geo.js.map +1 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +59 -0
- package/dist/index.js.map +1 -0
- package/dist/inventory.d.ts +1347 -0
- package/dist/inventory.d.ts.map +1 -0
- package/dist/inventory.js +356 -0
- package/dist/inventory.js.map +1 -0
- package/dist/invoice.d.ts +46 -0
- package/dist/invoice.d.ts.map +1 -0
- package/dist/invoice.js +33 -0
- package/dist/invoice.js.map +1 -0
- package/dist/iotsp/device.d.ts +581 -0
- package/dist/iotsp/device.d.ts.map +1 -0
- package/dist/iotsp/device.js +277 -0
- package/dist/iotsp/device.js.map +1 -0
- package/dist/iotsp/index.d.ts +111 -0
- package/dist/iotsp/index.d.ts.map +1 -0
- package/dist/iotsp/index.js +76 -0
- package/dist/iotsp/index.js.map +1 -0
- package/dist/iotsp/rule.d.ts +340 -0
- package/dist/iotsp/rule.d.ts.map +1 -0
- package/dist/iotsp/rule.js +172 -0
- package/dist/iotsp/rule.js.map +1 -0
- package/dist/iotsp/topic.d.ts +249 -0
- package/dist/iotsp/topic.d.ts.map +1 -0
- package/dist/iotsp/topic.js +139 -0
- package/dist/iotsp/topic.js.map +1 -0
- package/dist/lsp/carrier/analytics.d.ts +1191 -0
- package/dist/lsp/carrier/analytics.d.ts.map +1 -0
- package/dist/lsp/carrier/analytics.js +354 -0
- package/dist/lsp/carrier/analytics.js.map +1 -0
- package/dist/lsp/carrier/capabilities.d.ts +3603 -0
- package/dist/lsp/carrier/capabilities.d.ts.map +1 -0
- package/dist/lsp/carrier/capabilities.js +880 -0
- package/dist/lsp/carrier/capabilities.js.map +1 -0
- package/dist/lsp/carrier/capacities.d.ts +4436 -0
- package/dist/lsp/carrier/capacities.d.ts.map +1 -0
- package/dist/lsp/carrier/capacities.js +615 -0
- package/dist/lsp/carrier/capacities.js.map +1 -0
- package/dist/lsp/carrier/index.d.ts +734 -0
- package/dist/lsp/carrier/index.d.ts.map +1 -0
- package/dist/lsp/carrier/index.js +150 -0
- package/dist/lsp/carrier/index.js.map +1 -0
- package/dist/lsp/carrier/performance.d.ts +567 -0
- package/dist/lsp/carrier/performance.d.ts.map +1 -0
- package/dist/lsp/carrier/performance.js +127 -0
- package/dist/lsp/carrier/performance.js.map +1 -0
- package/dist/lsp/carrier/utilities.d.ts +6671 -0
- package/dist/lsp/carrier/utilities.d.ts.map +1 -0
- package/dist/lsp/carrier/utilities.js +597 -0
- package/dist/lsp/carrier/utilities.js.map +1 -0
- package/dist/lsp/consolidation.d.ts +793 -0
- package/dist/lsp/consolidation.d.ts.map +1 -0
- package/dist/lsp/consolidation.js +343 -0
- package/dist/lsp/consolidation.js.map +1 -0
- package/dist/lsp/coverage.d.ts +7449 -0
- package/dist/lsp/coverage.d.ts.map +1 -0
- package/dist/lsp/coverage.js +706 -0
- package/dist/lsp/coverage.js.map +1 -0
- package/dist/lsp/fleet/index.d.ts +1128 -0
- package/dist/lsp/fleet/index.d.ts.map +1 -0
- package/dist/lsp/fleet/index.js +269 -0
- package/dist/lsp/fleet/index.js.map +1 -0
- package/dist/lsp/fleet/maintenance.d.ts +2022 -0
- package/dist/lsp/fleet/maintenance.d.ts.map +1 -0
- package/dist/lsp/fleet/maintenance.js +386 -0
- package/dist/lsp/fleet/maintenance.js.map +1 -0
- package/dist/lsp/fleet/parking.d.ts +2043 -0
- package/dist/lsp/fleet/parking.d.ts.map +1 -0
- package/dist/lsp/fleet/parking.js +458 -0
- package/dist/lsp/fleet/parking.js.map +1 -0
- package/dist/lsp/fleet/vehicle.d.ts +783 -0
- package/dist/lsp/fleet/vehicle.d.ts.map +1 -0
- package/dist/lsp/fleet/vehicle.js +314 -0
- package/dist/lsp/fleet/vehicle.js.map +1 -0
- package/dist/lsp/graph.d.ts +212 -0
- package/dist/lsp/graph.d.ts.map +1 -0
- package/dist/lsp/graph.js +92 -0
- package/dist/lsp/graph.js.map +1 -0
- package/dist/lsp/hub/analytics.d.ts +4294 -0
- package/dist/lsp/hub/analytics.d.ts.map +1 -0
- package/dist/lsp/hub/analytics.js +219 -0
- package/dist/lsp/hub/analytics.js.map +1 -0
- package/dist/lsp/hub/capabilities.d.ts +1467 -0
- package/dist/lsp/hub/capabilities.d.ts.map +1 -0
- package/dist/lsp/hub/capabilities.js +464 -0
- package/dist/lsp/hub/capabilities.js.map +1 -0
- package/dist/lsp/hub/capacities.d.ts +4278 -0
- package/dist/lsp/hub/capacities.d.ts.map +1 -0
- package/dist/lsp/hub/capacities.js +495 -0
- package/dist/lsp/hub/capacities.js.map +1 -0
- package/dist/lsp/hub/index.d.ts +2784 -0
- package/dist/lsp/hub/index.d.ts.map +1 -0
- package/dist/lsp/hub/index.js +268 -0
- package/dist/lsp/hub/index.js.map +1 -0
- package/dist/lsp/hub/performance.d.ts +391 -0
- package/dist/lsp/hub/performance.d.ts.map +1 -0
- package/dist/lsp/hub/performance.js +78 -0
- package/dist/lsp/hub/performance.js.map +1 -0
- package/dist/lsp/hub/utilities.d.ts +2996 -0
- package/dist/lsp/hub/utilities.d.ts.map +1 -0
- package/dist/lsp/hub/utilities.js +521 -0
- package/dist/lsp/hub/utilities.js.map +1 -0
- package/dist/lsp/index.d.ts +157 -0
- package/dist/lsp/index.d.ts.map +1 -0
- package/dist/lsp/index.js +121 -0
- package/dist/lsp/index.js.map +1 -0
- package/dist/lsp/operations.d.ts +563 -0
- package/dist/lsp/operations.d.ts.map +1 -0
- package/dist/lsp/operations.js +265 -0
- package/dist/lsp/operations.js.map +1 -0
- package/dist/lsp/order/delivery.d.ts +1119 -0
- package/dist/lsp/order/delivery.d.ts.map +1 -0
- package/dist/lsp/order/delivery.js +169 -0
- package/dist/lsp/order/delivery.js.map +1 -0
- package/dist/lsp/order/flow/processes.d.ts +8 -0
- package/dist/lsp/order/flow/processes.d.ts.map +1 -0
- package/dist/lsp/order/flow/processes.js +67 -0
- package/dist/lsp/order/flow/processes.js.map +1 -0
- package/dist/lsp/order/flow/stages.d.ts +8 -0
- package/dist/lsp/order/flow/stages.d.ts.map +1 -0
- package/dist/lsp/order/flow/stages.js +111 -0
- package/dist/lsp/order/flow/stages.js.map +1 -0
- package/dist/lsp/order/inbound.d.ts +1165 -0
- package/dist/lsp/order/inbound.d.ts.map +1 -0
- package/dist/lsp/order/inbound.js +185 -0
- package/dist/lsp/order/inbound.js.map +1 -0
- package/dist/lsp/order/internal.d.ts +1404 -0
- package/dist/lsp/order/internal.d.ts.map +1 -0
- package/dist/lsp/order/internal.js +255 -0
- package/dist/lsp/order/internal.js.map +1 -0
- package/dist/lsp/order/management.d.ts +541 -0
- package/dist/lsp/order/management.d.ts.map +1 -0
- package/dist/lsp/order/management.js +326 -0
- package/dist/lsp/order/management.js.map +1 -0
- package/dist/lsp/order/outbound.d.ts +909 -0
- package/dist/lsp/order/outbound.d.ts.map +1 -0
- package/dist/lsp/order/outbound.js +105 -0
- package/dist/lsp/order/outbound.js.map +1 -0
- package/dist/lsp/order/passthrough.d.ts +1816 -0
- package/dist/lsp/order/passthrough.d.ts.map +1 -0
- package/dist/lsp/order/passthrough.js +360 -0
- package/dist/lsp/order/passthrough.js.map +1 -0
- package/dist/lsp/order/ride.d.ts +1056 -0
- package/dist/lsp/order/ride.d.ts.map +1 -0
- package/dist/lsp/order/ride.js +166 -0
- package/dist/lsp/order/ride.js.map +1 -0
- package/dist/lsp/order/shipping.d.ts +1524 -0
- package/dist/lsp/order/shipping.d.ts.map +1 -0
- package/dist/lsp/order/shipping.js +223 -0
- package/dist/lsp/order/shipping.js.map +1 -0
- package/dist/lsp/performance.d.ts +2 -0
- package/dist/lsp/performance.d.ts.map +1 -0
- package/dist/lsp/performance.js +3 -0
- package/dist/lsp/performance.js.map +1 -0
- package/dist/lsp/pod/index.d.ts +805 -0
- package/dist/lsp/pod/index.d.ts.map +1 -0
- package/dist/lsp/pod/index.js +250 -0
- package/dist/lsp/pod/index.js.map +1 -0
- package/dist/lsp/pricing.d.ts +1811 -0
- package/dist/lsp/pricing.d.ts.map +1 -0
- package/dist/lsp/pricing.js +972 -0
- package/dist/lsp/pricing.js.map +1 -0
- package/dist/lsp/processing.d.ts +893 -0
- package/dist/lsp/processing.d.ts.map +1 -0
- package/dist/lsp/processing.js +202 -0
- package/dist/lsp/processing.js.map +1 -0
- package/dist/lsp/product.d.ts +76 -0
- package/dist/lsp/product.d.ts.map +1 -0
- package/dist/lsp/product.js +3 -0
- package/dist/lsp/product.js.map +1 -0
- package/dist/lsp/psl.d.ts +785 -0
- package/dist/lsp/psl.d.ts.map +1 -0
- package/dist/lsp/psl.js +333 -0
- package/dist/lsp/psl.js.map +1 -0
- package/dist/lsp/terminal/analytics.d.ts +278 -0
- package/dist/lsp/terminal/analytics.d.ts.map +1 -0
- package/dist/lsp/terminal/analytics.js +310 -0
- package/dist/lsp/terminal/analytics.js.map +1 -0
- package/dist/lsp/terminal/capabilities.d.ts +797 -0
- package/dist/lsp/terminal/capabilities.d.ts.map +1 -0
- package/dist/lsp/terminal/capabilities.js +506 -0
- package/dist/lsp/terminal/capabilities.js.map +1 -0
- package/dist/lsp/terminal/capacities.d.ts +3152 -0
- package/dist/lsp/terminal/capacities.d.ts.map +1 -0
- package/dist/lsp/terminal/capacities.js +504 -0
- package/dist/lsp/terminal/capacities.js.map +1 -0
- package/dist/lsp/terminal/index.d.ts +1056 -0
- package/dist/lsp/terminal/index.d.ts.map +1 -0
- package/dist/lsp/terminal/index.js +394 -0
- package/dist/lsp/terminal/index.js.map +1 -0
- package/dist/lsp/terminal/performance.d.ts +955 -0
- package/dist/lsp/terminal/performance.d.ts.map +1 -0
- package/dist/lsp/terminal/performance.js +159 -0
- package/dist/lsp/terminal/performance.js.map +1 -0
- package/dist/lsp/terminal/utilities.d.ts +2374 -0
- package/dist/lsp/terminal/utilities.d.ts.map +1 -0
- package/dist/lsp/terminal/utilities.js +161 -0
- package/dist/lsp/terminal/utilities.js.map +1 -0
- package/dist/lsp/warehouse/analytics.d.ts +3088 -0
- package/dist/lsp/warehouse/analytics.d.ts.map +1 -0
- package/dist/lsp/warehouse/analytics.js +229 -0
- package/dist/lsp/warehouse/analytics.js.map +1 -0
- package/dist/lsp/warehouse/capabilities.d.ts +1384 -0
- package/dist/lsp/warehouse/capabilities.d.ts.map +1 -0
- package/dist/lsp/warehouse/capabilities.js +567 -0
- package/dist/lsp/warehouse/capabilities.js.map +1 -0
- package/dist/lsp/warehouse/capacities.d.ts +2921 -0
- package/dist/lsp/warehouse/capacities.d.ts.map +1 -0
- package/dist/lsp/warehouse/capacities.js +450 -0
- package/dist/lsp/warehouse/capacities.js.map +1 -0
- package/dist/lsp/warehouse/index.d.ts +2566 -0
- package/dist/lsp/warehouse/index.d.ts.map +1 -0
- package/dist/lsp/warehouse/index.js +264 -0
- package/dist/lsp/warehouse/index.js.map +1 -0
- package/dist/lsp/warehouse/performance.d.ts +287 -0
- package/dist/lsp/warehouse/performance.d.ts.map +1 -0
- package/dist/lsp/warehouse/performance.js +72 -0
- package/dist/lsp/warehouse/performance.js.map +1 -0
- package/dist/lsp/warehouse/utilities.d.ts +5174 -0
- package/dist/lsp/warehouse/utilities.d.ts.map +1 -0
- package/dist/lsp/warehouse/utilities.js +588 -0
- package/dist/lsp/warehouse/utilities.js.map +1 -0
- package/dist/lsp/zones.d.ts +305 -0
- package/dist/lsp/zones.d.ts.map +1 -0
- package/dist/lsp/zones.js +118 -0
- package/dist/lsp/zones.js.map +1 -0
- package/dist/measure.d.ts +139 -0
- package/dist/measure.d.ts.map +1 -0
- package/dist/measure.js +190 -0
- package/dist/measure.js.map +1 -0
- package/dist/operator.d.ts +103 -0
- package/dist/operator.d.ts.map +1 -0
- package/dist/operator.js +38 -0
- package/dist/operator.js.map +1 -0
- package/dist/order.d.ts +2739 -0
- package/dist/order.d.ts.map +1 -0
- package/dist/order.js +1078 -0
- package/dist/order.js.map +1 -0
- package/dist/realm/index.d.ts +4 -0
- package/dist/realm/index.d.ts.map +1 -0
- package/dist/realm/index.js +20 -0
- package/dist/realm/index.js.map +1 -0
- package/dist/realm/pipelines.d.ts +32567 -0
- package/dist/realm/pipelines.d.ts.map +1 -0
- package/dist/realm/pipelines.js +1273 -0
- package/dist/realm/pipelines.js.map +1 -0
- package/dist/realm/queries.d.ts +1327 -0
- package/dist/realm/queries.d.ts.map +1 -0
- package/dist/realm/queries.js +456 -0
- package/dist/realm/queries.js.map +1 -0
- package/dist/realm/utilities.d.ts +1794 -0
- package/dist/realm/utilities.d.ts.map +1 -0
- package/dist/realm/utilities.js +594 -0
- package/dist/realm/utilities.js.map +1 -0
- package/dist/routing.d.ts +428 -0
- package/dist/routing.d.ts.map +1 -0
- package/dist/routing.js +60 -0
- package/dist/routing.js.map +1 -0
- package/dist/service.d.ts +264 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +60 -0
- package/dist/service.js.map +1 -0
- package/dist/shared/access.d.ts +102 -0
- package/dist/shared/access.d.ts.map +1 -0
- package/dist/shared/access.js +30 -0
- package/dist/shared/access.js.map +1 -0
- package/dist/shared/account.d.ts +44 -0
- package/dist/shared/account.d.ts.map +1 -0
- package/dist/shared/account.js +15 -0
- package/dist/shared/account.js.map +1 -0
- package/dist/shared/auth.d.ts +45 -0
- package/dist/shared/auth.d.ts.map +1 -0
- package/dist/shared/auth.js +19 -0
- package/dist/shared/auth.js.map +1 -0
- package/dist/shared/bucket.d.ts +294 -0
- package/dist/shared/bucket.d.ts.map +1 -0
- package/dist/shared/bucket.js +79 -0
- package/dist/shared/bucket.js.map +1 -0
- package/dist/shared/faq.d.ts +280 -0
- package/dist/shared/faq.d.ts.map +1 -0
- package/dist/shared/faq.js +73 -0
- package/dist/shared/faq.js.map +1 -0
- package/dist/shared/index.d.ts +10 -0
- package/dist/shared/index.d.ts.map +1 -0
- package/dist/shared/index.js +26 -0
- package/dist/shared/index.js.map +1 -0
- package/dist/shared/invitation.d.ts +1525 -0
- package/dist/shared/invitation.d.ts.map +1 -0
- package/dist/shared/invitation.js +60 -0
- package/dist/shared/invitation.js.map +1 -0
- package/dist/shared/operator.d.ts +956 -0
- package/dist/shared/operator.d.ts.map +1 -0
- package/dist/shared/operator.js +48 -0
- package/dist/shared/operator.js.map +1 -0
- package/dist/shared/tracking.d.ts +31 -0
- package/dist/shared/tracking.d.ts.map +1 -0
- package/dist/shared/tracking.js +23 -0
- package/dist/shared/tracking.js.map +1 -0
- package/dist/shared/user.d.ts +77 -0
- package/dist/shared/user.d.ts.map +1 -0
- package/dist/shared/user.js +22 -0
- package/dist/shared/user.js.map +1 -0
- package/dist/sync.d.ts +539 -0
- package/dist/sync.d.ts.map +1 -0
- package/dist/sync.js +329 -0
- package/dist/sync.js.map +1 -0
- package/dist/time.d.ts +139 -0
- package/dist/time.d.ts.map +1 -0
- package/dist/time.js +93 -0
- package/dist/time.js.map +1 -0
- package/dist/user.d.ts +394 -0
- package/dist/user.d.ts.map +1 -0
- package/dist/user.js +205 -0
- package/dist/user.js.map +1 -0
- package/dist/workspace/admin.d.ts +91 -0
- package/dist/workspace/admin.d.ts.map +1 -0
- package/dist/workspace/admin.js +33 -0
- package/dist/workspace/admin.js.map +1 -0
- package/dist/workspace/billing.d.ts +2 -0
- package/dist/workspace/billing.d.ts.map +1 -0
- package/dist/workspace/billing.js +18 -0
- package/dist/workspace/billing.js.map +1 -0
- package/dist/workspace/connector.d.ts +595 -0
- package/dist/workspace/connector.d.ts.map +1 -0
- package/dist/workspace/connector.js +229 -0
- package/dist/workspace/connector.js.map +1 -0
- package/dist/workspace/index.d.ts +36 -0
- package/dist/workspace/index.d.ts.map +1 -0
- package/dist/workspace/index.js +21 -0
- package/dist/workspace/index.js.map +1 -0
- package/package.json +70 -0
- package/src/api.ts +147 -0
- package/src/auth.ts +103 -0
- package/src/aux/agent-rvs.ts +596 -0
- package/src/aux/agents.ts +542 -0
- package/src/aux/customer-rvs.ts +421 -0
- package/src/aux/customers.ts +80 -0
- package/src/aux/index.ts +4 -0
- package/src/billing.ts +330 -0
- package/src/bucket.ts +58 -0
- package/src/context.ts +167 -0
- package/src/csp/analytics.ts +238 -0
- package/src/csp/base.ts +18 -0
- package/src/csp/index.ts +41 -0
- package/src/csp/inventory.ts +325 -0
- package/src/csp/order.ts +485 -0
- package/src/csp/webhook.ts +269 -0
- package/src/de.profile.ts +123 -0
- package/src/dev/developer.ts +90 -0
- package/src/dev/index.ts +81 -0
- package/src/entity.ts +154 -0
- package/src/events.ts +349 -0
- package/src/faq.ts +39 -0
- package/src/geo.ts +111 -0
- package/src/index.ts +48 -0
- package/src/inventory.ts +405 -0
- package/src/invoice.ts +37 -0
- package/src/iotsp/device.ts +334 -0
- package/src/iotsp/index.ts +91 -0
- package/src/iotsp/rule.ts +227 -0
- package/src/iotsp/topic.ts +191 -0
- package/src/lsp/carrier/analytics.ts +393 -0
- package/src/lsp/carrier/capabilities.ts +1009 -0
- package/src/lsp/carrier/capacities.ts +723 -0
- package/src/lsp/carrier/index.ts +175 -0
- package/src/lsp/carrier/performance.ts +145 -0
- package/src/lsp/carrier/utilities.ts +654 -0
- package/src/lsp/consolidation.ts +420 -0
- package/src/lsp/coverage.ts +869 -0
- package/src/lsp/fleet/index.ts +327 -0
- package/src/lsp/fleet/maintenance.ts +478 -0
- package/src/lsp/fleet/parking.ts +582 -0
- package/src/lsp/fleet/vehicle.ts +381 -0
- package/src/lsp/graph.ts +113 -0
- package/src/lsp/hub/analytics.ts +236 -0
- package/src/lsp/hub/capabilities.ts +549 -0
- package/src/lsp/hub/capacities.ts +590 -0
- package/src/lsp/hub/index.ts +298 -0
- package/src/lsp/hub/performance.ts +89 -0
- package/src/lsp/hub/utilities.ts +560 -0
- package/src/lsp/index.ts +125 -0
- package/src/lsp/operations.ts +304 -0
- package/src/lsp/order/delivery.ts +212 -0
- package/src/lsp/order/flow/processes.ts +70 -0
- package/src/lsp/order/flow/stages.ts +119 -0
- package/src/lsp/order/inbound.ts +231 -0
- package/src/lsp/order/internal.ts +305 -0
- package/src/lsp/order/management.ts +367 -0
- package/src/lsp/order/outbound.ts +128 -0
- package/src/lsp/order/passthrough.ts +434 -0
- package/src/lsp/order/ride.ts +190 -0
- package/src/lsp/order/shipping.ts +263 -0
- package/src/lsp/performance.ts +2 -0
- package/src/lsp/pod/index.ts +323 -0
- package/src/lsp/pricing.ts +1097 -0
- package/src/lsp/processing.ts +243 -0
- package/src/lsp/product.ts +104 -0
- package/src/lsp/psl.ts +399 -0
- package/src/lsp/terminal/analytics.ts +334 -0
- package/src/lsp/terminal/capabilities.ts +541 -0
- package/src/lsp/terminal/capacities.ts +556 -0
- package/src/lsp/terminal/index.ts +442 -0
- package/src/lsp/terminal/performance.ts +168 -0
- package/src/lsp/terminal/utilities.ts +173 -0
- package/src/lsp/warehouse/analytics.ts +248 -0
- package/src/lsp/warehouse/capabilities.ts +673 -0
- package/src/lsp/warehouse/capacities.ts +538 -0
- package/src/lsp/warehouse/index.ts +298 -0
- package/src/lsp/warehouse/performance.ts +83 -0
- package/src/lsp/warehouse/utilities.ts +634 -0
- package/src/lsp/zones.ts +148 -0
- package/src/measure.ts +240 -0
- package/src/operator.ts +39 -0
- package/src/order.ts +1207 -0
- package/src/realm/index.ts +3 -0
- package/src/realm/pipelines.ts +1607 -0
- package/src/realm/queries.ts +608 -0
- package/src/realm/utilities.ts +730 -0
- package/src/routing.ts +69 -0
- package/src/service.ts +66 -0
- package/src/shared/access.ts +58 -0
- package/src/shared/account.ts +25 -0
- package/src/shared/auth.ts +30 -0
- package/src/shared/bucket.ts +153 -0
- package/src/shared/faq.ts +139 -0
- package/src/shared/index.ts +9 -0
- package/src/shared/invitation.ts +124 -0
- package/src/shared/operator.ts +159 -0
- package/src/shared/tracking.ts +30 -0
- package/src/shared/user.ts +42 -0
- package/src/sync.ts +364 -0
- package/src/time.ts +113 -0
- package/src/user.ts +243 -0
- package/src/workspace/admin.ts +38 -0
- package/src/workspace/billing.ts +1 -0
- package/src/workspace/connector.ts +270 -0
- package/src/workspace/index.ts +22 -0
|
@@ -0,0 +1,869 @@
|
|
|
1
|
+
import { Type, Static } from '@sinclair/typebox'
|
|
2
|
+
import { LSPNetworkNodeSchema } from '.'
|
|
3
|
+
import { VehicleTypeSchema } from './fleet/vehicle'
|
|
4
|
+
import { ParkingTypeSchema } from './fleet/parking'
|
|
5
|
+
import { ActionRecordSchema, DateTimeZoneSchema, DurationRangeSchema, TimeSchema, WeekDaySchema } from '../time'
|
|
6
|
+
import { DistanceSchema, MoneySchema, PerTimeSchema, ServiceLevelSchema, VolumeSchema, WeightSchema } from '../measure'
|
|
7
|
+
import { ContextSchema } from '../context'
|
|
8
|
+
import { EntityStatusSchema } from '../entity'
|
|
9
|
+
import { GeoBoundarySchema } from '../geo'
|
|
10
|
+
|
|
11
|
+
export const CoverageReachSchema = Type.Union([
|
|
12
|
+
Type.Literal('INTERNATIONAL'),
|
|
13
|
+
Type.Literal('INTERSTATE'),
|
|
14
|
+
Type.Literal('NATIONAL'),
|
|
15
|
+
Type.Literal('REGIONAL'),
|
|
16
|
+
Type.Literal('LOCAL'),
|
|
17
|
+
Type.Literal('MICRO')
|
|
18
|
+
])
|
|
19
|
+
export const CoverageTransitModeSchema = Type.Union([
|
|
20
|
+
Type.Literal('ROAD'), // Road freight transport
|
|
21
|
+
Type.Literal('AIR'), // Air freight transport
|
|
22
|
+
Type.Literal('RAIL'), // Rail freight transport
|
|
23
|
+
Type.Literal('SEA'), // Sea freight transport
|
|
24
|
+
Type.Literal('BARGE'), // Inland waterway transport
|
|
25
|
+
Type.Literal('PIPELINE'), // Pipeline transport (oil, gas, liquids)
|
|
26
|
+
])
|
|
27
|
+
export const CoverageTransitTypeSchema = Type.Union([
|
|
28
|
+
Type.Literal('CROSS_BORDER'),
|
|
29
|
+
Type.Literal('INTERMODAL'),
|
|
30
|
+
Type.Literal('MULTIMODAL'),
|
|
31
|
+
Type.Literal('LAST_MILE'),
|
|
32
|
+
Type.Literal('MIDDLE_MILE'),
|
|
33
|
+
Type.Literal('LONG_HAUL'),
|
|
34
|
+
Type.Literal('LINEHAUL'),
|
|
35
|
+
// REVIEW
|
|
36
|
+
Type.Literal('PICKUP_DELIVERY'),
|
|
37
|
+
|
|
38
|
+
Type.Literal('HUB_TO_HUB'),
|
|
39
|
+
Type.Literal('HUB_TO_TERMINAL'),
|
|
40
|
+
Type.Literal('HUB_TO_WAREHOUSE'),
|
|
41
|
+
|
|
42
|
+
Type.Literal('TERMINAL_TO_TERMINAL'),
|
|
43
|
+
Type.Literal('TERMINAL_TO_HUB'),
|
|
44
|
+
Type.Literal('TERMINAL_TO_WAREHOUSE'),
|
|
45
|
+
|
|
46
|
+
Type.Literal('WAREHOUSE_TO_WAREHOUSE'),
|
|
47
|
+
Type.Literal('WAREHOUSE_TO_TERMINAL'),
|
|
48
|
+
Type.Literal('WAREHOUSE_TO_HUB'),
|
|
49
|
+
|
|
50
|
+
Type.Literal('POINT_TO_POINT'),
|
|
51
|
+
Type.Literal('MULTI_STOP'),
|
|
52
|
+
Type.Literal('MILK_RUN'),
|
|
53
|
+
Type.Literal('CONSOLIDATION'),
|
|
54
|
+
Type.Literal('DECONSOLIDATION')
|
|
55
|
+
])
|
|
56
|
+
export const CoverageTransitSchema = Type.Object({
|
|
57
|
+
type: CoverageTransitTypeSchema,
|
|
58
|
+
mode: CoverageTransitModeSchema,
|
|
59
|
+
time: DurationRangeSchema, // in Hours
|
|
60
|
+
/**
|
|
61
|
+
* Declare other hubs/terminals/warehouses/points
|
|
62
|
+
* directly linked to this point of the coverage.
|
|
63
|
+
*/
|
|
64
|
+
nodes: Type.Optional(Type.Array(LSPNetworkNodeSchema))
|
|
65
|
+
})
|
|
66
|
+
export const CoverageScheduleSchema = Type.Object({
|
|
67
|
+
frequency: Type.Union([
|
|
68
|
+
Type.Literal('HOURLY'),
|
|
69
|
+
Type.Literal('DAILY'),
|
|
70
|
+
Type.Literal('WEEKLY'),
|
|
71
|
+
Type.Literal('ON_DEMAND')
|
|
72
|
+
]),
|
|
73
|
+
departureTimes: Type.Array(TimeSchema),
|
|
74
|
+
arrivalTimes: Type.Optional(Type.Array(TimeSchema)),
|
|
75
|
+
operatingDays: Type.Array(WeekDaySchema)
|
|
76
|
+
})
|
|
77
|
+
export const CoverageCapacitySchema = Type.Object({
|
|
78
|
+
freight: Type.Object({
|
|
79
|
+
volume: VolumeSchema,
|
|
80
|
+
weight: WeightSchema,
|
|
81
|
+
packages: Type.Optional(Type.Number({ minimum: 0 }))
|
|
82
|
+
}),
|
|
83
|
+
passenger: Type.Object({
|
|
84
|
+
seats: Type.Number({ minimum: 0 }),
|
|
85
|
+
weight: Type.Optional(WeightSchema),
|
|
86
|
+
packages: Type.Optional(Type.Number({ minimum: 0 }))
|
|
87
|
+
})
|
|
88
|
+
})
|
|
89
|
+
export const CoverageRestrictionTypeSchema = Type.Union([
|
|
90
|
+
Type.Literal('SPEED_LIMIT'),
|
|
91
|
+
Type.Literal('NO_GO_ZONE'),
|
|
92
|
+
Type.Literal('PARKING'),
|
|
93
|
+
Type.Literal('TIME_RESTRICTION'),
|
|
94
|
+
Type.Literal('VEHICLE_TYPE'),
|
|
95
|
+
Type.Literal('WEIGHT_LIMIT'),
|
|
96
|
+
Type.Literal('HEIGHT_LIMIT'),
|
|
97
|
+
Type.Literal('OTHER')
|
|
98
|
+
])
|
|
99
|
+
export const CoverageRestrictionSchema = Type.Object({
|
|
100
|
+
type: CoverageRestrictionTypeSchema,
|
|
101
|
+
code: Type.String(),
|
|
102
|
+
label: Type.String(),
|
|
103
|
+
reason: Type.String(),
|
|
104
|
+
alternativeOptions: Type.Optional(Type.Array(Type.String())),
|
|
105
|
+
|
|
106
|
+
// Vehicle-specific restrictions (for mobility, fleet, e-scooters)
|
|
107
|
+
vehicleType: Type.Optional(VehicleTypeSchema),
|
|
108
|
+
speedLimit: Type.Optional(Type.Object({
|
|
109
|
+
value: Type.Number({ minimum: 0 }),
|
|
110
|
+
unit: Type.Union([
|
|
111
|
+
Type.Literal('KM_PER_HOUR'),
|
|
112
|
+
Type.Literal('MPH')
|
|
113
|
+
])
|
|
114
|
+
})),
|
|
115
|
+
allowed: Type.Optional(Type.Boolean()),
|
|
116
|
+
activeHours: Type.Optional(Type.Object({
|
|
117
|
+
start: TimeSchema,
|
|
118
|
+
end: TimeSchema,
|
|
119
|
+
days: Type.Optional(Type.Array(WeekDaySchema))
|
|
120
|
+
})),
|
|
121
|
+
severity: Type.Optional(Type.Union([
|
|
122
|
+
Type.Literal('WARNING'),
|
|
123
|
+
Type.Literal('ENFORCED'),
|
|
124
|
+
Type.Literal('CRITICAL')
|
|
125
|
+
])),
|
|
126
|
+
|
|
127
|
+
// Parking-specific restrictions (when type = 'PARKING')
|
|
128
|
+
parkingTypes: Type.Optional(Type.Array(ParkingTypeSchema)), // Allowed/restricted parking types
|
|
129
|
+
parkingCapacity: Type.Optional(Type.Object({
|
|
130
|
+
max: Type.Number({ minimum: 0 }),
|
|
131
|
+
unit: Type.Union([
|
|
132
|
+
Type.Literal('VEHICLES'),
|
|
133
|
+
Type.Literal('SPACES')
|
|
134
|
+
])
|
|
135
|
+
})),
|
|
136
|
+
chargingRequired: Type.Optional(Type.Boolean()), // Must park at charging dock when battery low
|
|
137
|
+
minimumBatteryLevel: Type.Optional(Type.Number({ minimum: 0, maximum: 100 })) // % threshold for charging enforcement
|
|
138
|
+
})
|
|
139
|
+
export const CoveragePerformanceSchema = Type.Object({
|
|
140
|
+
reliability: Type.Number({ minimum: 0, maximum: 100, description: 'percentage' }),
|
|
141
|
+
averageDelay: PerTimeSchema, // minutes,
|
|
142
|
+
capacityUtilization: Type.Number({ minimum: 0, maximum: 100 }),
|
|
143
|
+
cost: Type.Optional(MoneySchema)
|
|
144
|
+
})
|
|
145
|
+
|
|
146
|
+
export const CoverageSegmentTypeSchema = Type.Union([
|
|
147
|
+
Type.Literal('AREA'),
|
|
148
|
+
Type.Literal('ROUTE')
|
|
149
|
+
])
|
|
150
|
+
export const CoverageSegmentBaseSchema = Type.Object({
|
|
151
|
+
context: ContextSchema,
|
|
152
|
+
id: Type.String(),
|
|
153
|
+
code: Type.String(),
|
|
154
|
+
name: Type.String(),
|
|
155
|
+
status: EntityStatusSchema,
|
|
156
|
+
reach: CoverageReachSchema,
|
|
157
|
+
serviceLevel: ServiceLevelSchema,
|
|
158
|
+
transit: CoverageTransitSchema,
|
|
159
|
+
cutoffTime: Type.Optional(DateTimeZoneSchema), // "15:00"
|
|
160
|
+
schedules: CoverageScheduleSchema,
|
|
161
|
+
capacity: CoverageCapacitySchema,
|
|
162
|
+
restrictions: Type.Optional(Type.Array(CoverageRestrictionSchema)),
|
|
163
|
+
isGuaranteed: Type.Boolean(),
|
|
164
|
+
|
|
165
|
+
// Performance
|
|
166
|
+
performance: Type.Optional(CoveragePerformanceSchema),
|
|
167
|
+
|
|
168
|
+
added: ActionRecordSchema,
|
|
169
|
+
updated: Type.Optional(ActionRecordSchema)
|
|
170
|
+
}, { additionalProperties: false })
|
|
171
|
+
|
|
172
|
+
export const CoverageAreaTypeSchema = Type.Union([
|
|
173
|
+
Type.Literal('CITY'),
|
|
174
|
+
Type.Literal('TOWN'),
|
|
175
|
+
Type.Literal('METROPOLITAN'),
|
|
176
|
+
Type.Literal('COUNTY'),
|
|
177
|
+
Type.Literal('STATE'),
|
|
178
|
+
Type.Literal('REGION'),
|
|
179
|
+
Type.Literal('COUNTRY'),
|
|
180
|
+
Type.Literal('CUSTOM_ZONE')
|
|
181
|
+
])
|
|
182
|
+
export const CoverageCityAreaSchema = Type.Composite([
|
|
183
|
+
CoverageSegmentBaseSchema,
|
|
184
|
+
Type.Object({
|
|
185
|
+
type: Type.Literal('AREA'),
|
|
186
|
+
areaType: Type.Literal('CITY'),
|
|
187
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
188
|
+
|
|
189
|
+
country: Type.String({ minLength: 2, maxLength: 2 }),
|
|
190
|
+
region: Type.String({ minLength: 1, maxLength: 100 }),
|
|
191
|
+
state: Type.Optional(Type.String({ minLength: 1, maxLength: 100 })),
|
|
192
|
+
city: Type.String({ minLength: 1, maxLength: 100 }),
|
|
193
|
+
}, { additionalProperties: false })
|
|
194
|
+
])
|
|
195
|
+
export const CoverageTownAreaSchema = Type.Composite([
|
|
196
|
+
CoverageSegmentBaseSchema,
|
|
197
|
+
Type.Object({
|
|
198
|
+
type: Type.Literal('AREA'),
|
|
199
|
+
areaType: Type.Literal('TOWN'),
|
|
200
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
201
|
+
|
|
202
|
+
country: Type.String({ minLength: 2, maxLength: 2 }),
|
|
203
|
+
region: Type.String({ minLength: 1, maxLength: 100 }),
|
|
204
|
+
state: Type.Optional(Type.String({ minLength: 1, maxLength: 100 })),
|
|
205
|
+
town: Type.String({ minLength: 1, maxLength: 100 }),
|
|
206
|
+
}, { additionalProperties: false })
|
|
207
|
+
])
|
|
208
|
+
export const CoverageMetropolitanAreaSchema = Type.Composite([
|
|
209
|
+
CoverageSegmentBaseSchema,
|
|
210
|
+
Type.Object({
|
|
211
|
+
type: Type.Literal('AREA'),
|
|
212
|
+
areaType: Type.Literal('METROPOLITAN'),
|
|
213
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
214
|
+
|
|
215
|
+
country: Type.String({ minLength: 2, maxLength: 2 }), // Country code
|
|
216
|
+
region: Type.String({ minLength: 1, maxLength: 100 }),
|
|
217
|
+
state: Type.Optional(Type.String({ minLength: 1, maxLength: 100 })),
|
|
218
|
+
metropolitan: Type.String({ minLength: 1, maxLength: 100 })
|
|
219
|
+
}, { additionalProperties: false })
|
|
220
|
+
])
|
|
221
|
+
export const CoverageCountyAreaSchema = Type.Composite([
|
|
222
|
+
CoverageSegmentBaseSchema,
|
|
223
|
+
Type.Object({
|
|
224
|
+
type: Type.Literal('AREA'),
|
|
225
|
+
areaType: Type.Literal('COUNTY'),
|
|
226
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
227
|
+
|
|
228
|
+
country: Type.String({ minLength: 2, maxLength: 2 }), // Country code
|
|
229
|
+
region: Type.String({ minLength: 1, maxLength: 100 }),
|
|
230
|
+
state: Type.Optional(Type.String({ minLength: 1, maxLength: 100 })),
|
|
231
|
+
county: Type.String({ minLength: 1, maxLength: 100 })
|
|
232
|
+
}, { additionalProperties: false })
|
|
233
|
+
])
|
|
234
|
+
export const CoverageStateAreaSchema = Type.Composite([
|
|
235
|
+
CoverageSegmentBaseSchema,
|
|
236
|
+
Type.Object({
|
|
237
|
+
type: Type.Literal('AREA'),
|
|
238
|
+
areaType: Type.Literal('STATE'),
|
|
239
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
240
|
+
|
|
241
|
+
country: Type.String({ minLength: 2, maxLength: 2 }), // Country code
|
|
242
|
+
state: Type.String({ minLength: 1, maxLength: 100 })
|
|
243
|
+
}, { additionalProperties: false })
|
|
244
|
+
])
|
|
245
|
+
export const CoverageRegionAreaSchema = Type.Composite([
|
|
246
|
+
CoverageSegmentBaseSchema,
|
|
247
|
+
Type.Object({
|
|
248
|
+
type: Type.Literal('AREA'),
|
|
249
|
+
areaType: Type.Literal('REGION'),
|
|
250
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
251
|
+
|
|
252
|
+
country: Type.String({ minLength: 2, maxLength: 2 }), // Country code
|
|
253
|
+
region: Type.String({ minLength: 1, maxLength: 100 })
|
|
254
|
+
}, { additionalProperties: false })
|
|
255
|
+
])
|
|
256
|
+
export const CoverageCountryAreaSchema = Type.Composite([
|
|
257
|
+
CoverageSegmentBaseSchema,
|
|
258
|
+
Type.Object({
|
|
259
|
+
type: Type.Literal('AREA'),
|
|
260
|
+
areaType: Type.Literal('COUNTRY'),
|
|
261
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
262
|
+
|
|
263
|
+
country: Type.String({ minLength: 2, maxLength: 2 }) // Country code
|
|
264
|
+
}, { additionalProperties: false })
|
|
265
|
+
])
|
|
266
|
+
export const CoverageCustomAreaSchema = Type.Composite([
|
|
267
|
+
CoverageSegmentBaseSchema,
|
|
268
|
+
Type.Object({
|
|
269
|
+
type: Type.Literal('AREA'),
|
|
270
|
+
areaType: Type.Literal('CUSTOM_ZONE'),
|
|
271
|
+
linkedTo: Type.Array(LSPNetworkNodeSchema),
|
|
272
|
+
boundary: GeoBoundarySchema
|
|
273
|
+
}, { additionalProperties: false })
|
|
274
|
+
])
|
|
275
|
+
|
|
276
|
+
export const CoverageRouteTypeSchema = Type.Union([
|
|
277
|
+
Type.Literal('POINT_BASED'),
|
|
278
|
+
Type.Literal('GEOJSON_BASED')
|
|
279
|
+
])
|
|
280
|
+
export const CoveragePointsRouteSchema = Type.Composite([
|
|
281
|
+
CoverageSegmentBaseSchema,
|
|
282
|
+
Type.Object({
|
|
283
|
+
type: Type.Literal('ROUTE'),
|
|
284
|
+
routeType: Type.Literal('POINT_BASED'),
|
|
285
|
+
origin: LSPNetworkNodeSchema,
|
|
286
|
+
destination: LSPNetworkNodeSchema,
|
|
287
|
+
distance: DistanceSchema
|
|
288
|
+
})
|
|
289
|
+
])
|
|
290
|
+
export const CoverageGeoJsonRouteSchema = Type.Composite([
|
|
291
|
+
CoverageSegmentBaseSchema,
|
|
292
|
+
Type.Object({
|
|
293
|
+
type: Type.Literal('ROUTE'),
|
|
294
|
+
routeType: Type.Literal('GEOJSON_BASED'),
|
|
295
|
+
geojson: Type.Any(),
|
|
296
|
+
distance: DistanceSchema
|
|
297
|
+
})
|
|
298
|
+
])
|
|
299
|
+
|
|
300
|
+
// LSP Hub Coverage Operation Schema
|
|
301
|
+
export const CoverageOperationSchema = Type.Object({
|
|
302
|
+
id: Type.String(),
|
|
303
|
+
name: Type.String(),
|
|
304
|
+
type: Type.Union([
|
|
305
|
+
Type.Literal('CAPACITY_BALANCING'),
|
|
306
|
+
Type.Literal('ROUTE_OPTIMIZATION'),
|
|
307
|
+
Type.Literal('EMERGENCY_REROUTING'),
|
|
308
|
+
Type.Literal('COVERAGE_MAINTENANCE'),
|
|
309
|
+
Type.Literal('SERVICE_DISRUPTION'),
|
|
310
|
+
Type.Literal('PEAK_MANAGEMENT')
|
|
311
|
+
]),
|
|
312
|
+
|
|
313
|
+
// Operation scope
|
|
314
|
+
scope: Type.Object({
|
|
315
|
+
affectedHubs: Type.Array(Type.String()),
|
|
316
|
+
affectedRoutes: Type.Array(Type.String()),
|
|
317
|
+
affectedServiceLevels: Type.Array(ServiceLevelSchema),
|
|
318
|
+
estimatedImpact: Type.Union([
|
|
319
|
+
Type.Literal('LOW'),
|
|
320
|
+
Type.Literal('MEDIUM'),
|
|
321
|
+
Type.Literal('HIGH'),
|
|
322
|
+
Type.Literal('CRITICAL')
|
|
323
|
+
])
|
|
324
|
+
}),
|
|
325
|
+
|
|
326
|
+
// Operation details
|
|
327
|
+
details: Type.Object({
|
|
328
|
+
triggerReason: Type.String({ maxLength: 500 }),
|
|
329
|
+
description: Type.String({ maxLength: 1000 }),
|
|
330
|
+
executionPlan: Type.Array(Type.Object({
|
|
331
|
+
step: Type.Number(),
|
|
332
|
+
action: Type.String(),
|
|
333
|
+
hubId: Type.Optional(Type.String()),
|
|
334
|
+
estimatedDuration: Type.Number({ description: 'minutes' }),
|
|
335
|
+
dependencies: Type.Array(Type.String()),
|
|
336
|
+
status: Type.Union([
|
|
337
|
+
Type.Literal('PENDING'),
|
|
338
|
+
Type.Literal('IN_PROGRESS'),
|
|
339
|
+
Type.Literal('COMPLETED'),
|
|
340
|
+
Type.Literal('FAILED'),
|
|
341
|
+
Type.Literal('SKIPPED')
|
|
342
|
+
])
|
|
343
|
+
}))
|
|
344
|
+
}),
|
|
345
|
+
|
|
346
|
+
// Operation scheduling
|
|
347
|
+
scheduling: Type.Object({
|
|
348
|
+
scheduledAt: Type.Number(),
|
|
349
|
+
startedAt: Type.Optional(Type.Number()),
|
|
350
|
+
completedAt: Type.Optional(Type.Number()),
|
|
351
|
+
priority: Type.Union([
|
|
352
|
+
Type.Literal('LOW'),
|
|
353
|
+
Type.Literal('NORMAL'),
|
|
354
|
+
Type.Literal('HIGH'),
|
|
355
|
+
Type.Literal('URGENT')
|
|
356
|
+
])
|
|
357
|
+
}),
|
|
358
|
+
|
|
359
|
+
// Operation status
|
|
360
|
+
status: Type.Union([
|
|
361
|
+
Type.Literal('PLANNED'),
|
|
362
|
+
Type.Literal('APPROVED'),
|
|
363
|
+
Type.Literal('EXECUTING'),
|
|
364
|
+
Type.Literal('COMPLETED'),
|
|
365
|
+
Type.Literal('FAILED'),
|
|
366
|
+
Type.Literal('CANCELLED'),
|
|
367
|
+
Type.Literal('ROLLED_BACK')
|
|
368
|
+
]),
|
|
369
|
+
|
|
370
|
+
created: ActionRecordSchema,
|
|
371
|
+
updated: Type.Optional(ActionRecordSchema)
|
|
372
|
+
})
|
|
373
|
+
|
|
374
|
+
export type CoverageTransitType = Static<typeof CoverageTransitTypeSchema>
|
|
375
|
+
export type CoverageTransitMode = Static<typeof CoverageTransitModeSchema>
|
|
376
|
+
export type CoverageTransit = Static<typeof CoverageTransitSchema>
|
|
377
|
+
export type CoverageReach = Static<typeof CoverageReachSchema>
|
|
378
|
+
export type CoverageSchedule = Static<typeof CoverageScheduleSchema>
|
|
379
|
+
export type CoverageCapacity = Static<typeof CoverageCapacitySchema>
|
|
380
|
+
export type CoverageRestrictionType = Static<typeof CoverageRestrictionTypeSchema>
|
|
381
|
+
export type CoverageRestriction = Static<typeof CoverageRestrictionSchema>
|
|
382
|
+
export type CoverageSegmentType = Static<typeof CoverageSegmentTypeSchema>
|
|
383
|
+
export type CoverageCityArea = Static<typeof CoverageCityAreaSchema>
|
|
384
|
+
export type CoverageTownArea = Static<typeof CoverageTownAreaSchema>
|
|
385
|
+
export type CoverageMetropolitanArea = Static<typeof CoverageMetropolitanAreaSchema>
|
|
386
|
+
export type CoverageCountyArea = Static<typeof CoverageCountyAreaSchema>
|
|
387
|
+
export type CoverageStateArea = Static<typeof CoverageStateAreaSchema>
|
|
388
|
+
export type CoverageRegionArea = Static<typeof CoverageRegionAreaSchema>
|
|
389
|
+
export type CoverageCountryArea = Static<typeof CoverageCountryAreaSchema>
|
|
390
|
+
export type CoverageCustomArea = Static<typeof CoverageCustomAreaSchema>
|
|
391
|
+
export type CoverageAreaType = Static<typeof CoverageAreaTypeSchema>
|
|
392
|
+
export type CoverageArea = CoverageCityArea
|
|
393
|
+
| CoverageTownArea
|
|
394
|
+
| CoverageMetropolitanArea
|
|
395
|
+
| CoverageCountyArea
|
|
396
|
+
| CoverageStateArea
|
|
397
|
+
| CoverageRegionArea
|
|
398
|
+
| CoverageCountryArea
|
|
399
|
+
| CoverageCustomArea
|
|
400
|
+
export type CoveragePointsRoute = Static<typeof CoveragePointsRouteSchema>
|
|
401
|
+
export type CoverageRouteType = Static<typeof CoverageRouteTypeSchema>
|
|
402
|
+
export type CoverageGeoJsonRoute = Static<typeof CoverageGeoJsonRouteSchema>
|
|
403
|
+
export type CoverageRoute = CoveragePointsRoute
|
|
404
|
+
| CoverageGeoJsonRoute
|
|
405
|
+
// export type CoverageSegment = Static<typeof CoverageSegmentSchema>
|
|
406
|
+
export type CoveragePerformance = Static<typeof CoveragePerformanceSchema>
|
|
407
|
+
|
|
408
|
+
export type CoverageOperation = Static<typeof CoverageOperationSchema>
|
|
409
|
+
|
|
410
|
+
// ─── Request Validation Schemas ───────────────────────────────────────────────
|
|
411
|
+
|
|
412
|
+
import {
|
|
413
|
+
APIErrorSchema,
|
|
414
|
+
APIHeadersSchema,
|
|
415
|
+
APIResponseBaseSchema,
|
|
416
|
+
APIResponseDataSchemaFactory,
|
|
417
|
+
FetchByQueryRequestSchema
|
|
418
|
+
} from '../api'
|
|
419
|
+
import { CoordinatesSchema } from '../geo'
|
|
420
|
+
|
|
421
|
+
const AREA_OMIT = ['id', 'context', 'type', 'areaType', 'status', 'transit.nodes', 'linkedTo', 'performance', 'added', 'updated'] as const
|
|
422
|
+
const ROUTE_OMIT = ['id', 'context', 'type', 'routeType', 'status', 'transit.nodes', 'performance', 'added', 'updated'] as const
|
|
423
|
+
|
|
424
|
+
const AreaCreatedResponse = { 201: APIResponseDataSchemaFactory({ areaId: Type.String() }), '4XX': APIErrorSchema }
|
|
425
|
+
const RouteCreatedResponse = { 201: APIResponseDataSchemaFactory({ routeId: Type.String() }), '4XX': APIErrorSchema }
|
|
426
|
+
|
|
427
|
+
// ── Overview ──────────────────────────────────────────────────────────────────
|
|
428
|
+
|
|
429
|
+
export const LSPCoverageOverviewRVS = {
|
|
430
|
+
headers: APIHeadersSchema,
|
|
431
|
+
querystring: Type.Object({
|
|
432
|
+
type: Type.Optional(CoverageSegmentTypeSchema),
|
|
433
|
+
status: Type.Optional(EntityStatusSchema)
|
|
434
|
+
}),
|
|
435
|
+
response: {
|
|
436
|
+
200: APIResponseDataSchemaFactory({ coverage: Type.Array(Type.Any()), total: Type.Number() }),
|
|
437
|
+
'4XX': APIErrorSchema
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
// ── Areas — Add ───────────────────────────────────────────────────────────────
|
|
442
|
+
|
|
443
|
+
export const LSPCoverageAddCityAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageCityAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
444
|
+
export const LSPCoverageAddTownAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageTownAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
445
|
+
export const LSPCoverageAddMetroAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageMetropolitanAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
446
|
+
export const LSPCoverageAddCountyAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageCountyAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
447
|
+
export const LSPCoverageAddStateAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageStateAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
448
|
+
export const LSPCoverageAddRegionAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageRegionAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
449
|
+
export const LSPCoverageAddCountryAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageCountryAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
450
|
+
export const LSPCoverageAddCustomAreaRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageCustomAreaSchema, AREA_OMIT), response: AreaCreatedResponse }
|
|
451
|
+
|
|
452
|
+
// ── Areas — Update ────────────────────────────────────────────────────────────
|
|
453
|
+
|
|
454
|
+
const AreaUpdateParams = Type.Object({ id: Type.String() })
|
|
455
|
+
|
|
456
|
+
export const LSPCoverageUpdateCityAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageCityAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageCityAreaSchema }), '4XX': APIErrorSchema } }
|
|
457
|
+
export const LSPCoverageUpdateTownAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageTownAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageTownAreaSchema }), '4XX': APIErrorSchema } }
|
|
458
|
+
export const LSPCoverageUpdateMetroAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageMetropolitanAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageMetropolitanAreaSchema }), '4XX': APIErrorSchema } }
|
|
459
|
+
export const LSPCoverageUpdateCountyAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageCountyAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageCountyAreaSchema }), '4XX': APIErrorSchema } }
|
|
460
|
+
export const LSPCoverageUpdateStateAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageStateAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageStateAreaSchema }), '4XX': APIErrorSchema } }
|
|
461
|
+
export const LSPCoverageUpdateRegionAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageRegionAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageRegionAreaSchema }), '4XX': APIErrorSchema } }
|
|
462
|
+
export const LSPCoverageUpdateCountryAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageCountryAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageCountryAreaSchema }), '4XX': APIErrorSchema } }
|
|
463
|
+
export const LSPCoverageUpdateCustomAreaRVS = { headers: APIHeadersSchema, params: AreaUpdateParams, body: Type.Partial(Type.Omit(CoverageCustomAreaSchema, AREA_OMIT)), response: { 200: APIResponseDataSchemaFactory({ area: CoverageCustomAreaSchema }), '4XX': APIErrorSchema } }
|
|
464
|
+
|
|
465
|
+
// ── Areas — Common ────────────────────────────────────────────────────────────
|
|
466
|
+
|
|
467
|
+
export const LSPCoverageGetAreaRVS = {
|
|
468
|
+
headers: APIHeadersSchema,
|
|
469
|
+
params: Type.Object({ id: Type.String() }),
|
|
470
|
+
response: {
|
|
471
|
+
200: APIResponseDataSchemaFactory({ area: Type.Any() }),
|
|
472
|
+
'4XX': APIErrorSchema
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
export const LSPCoverageGetRouteRVS = {
|
|
477
|
+
headers: APIHeadersSchema,
|
|
478
|
+
params: Type.Object({ id: Type.String() }),
|
|
479
|
+
response: {
|
|
480
|
+
200: APIResponseDataSchemaFactory({ route: Type.Any() }),
|
|
481
|
+
'4XX': APIErrorSchema
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
|
|
485
|
+
export const LSPCoverageListAreasRVS = {
|
|
486
|
+
headers: APIHeadersSchema,
|
|
487
|
+
querystring: Type.Composite([
|
|
488
|
+
FetchByQueryRequestSchema,
|
|
489
|
+
Type.Object({ status: Type.Optional(EntityStatusSchema) })
|
|
490
|
+
]),
|
|
491
|
+
response: {
|
|
492
|
+
200: APIResponseDataSchemaFactory({ areas: Type.Array(Type.Any()) }),
|
|
493
|
+
'4XX': APIErrorSchema
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
|
|
497
|
+
export const LSPCoverageLinkNodeRVS = {
|
|
498
|
+
headers: APIHeadersSchema,
|
|
499
|
+
params: Type.Object({ id: Type.String() }),
|
|
500
|
+
body: LSPNetworkNodeSchema,
|
|
501
|
+
response: {
|
|
502
|
+
200: APIResponseDataSchemaFactory({ area: Type.Any() }),
|
|
503
|
+
'4XX': APIErrorSchema
|
|
504
|
+
}
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
export const LSPCoverageUnlinkNodeRVS = {
|
|
508
|
+
headers: APIHeadersSchema,
|
|
509
|
+
params: Type.Object({ id: Type.String() }),
|
|
510
|
+
body: Type.Object({
|
|
511
|
+
id: Type.Optional(Type.String()),
|
|
512
|
+
addressName: Type.Optional(Type.String())
|
|
513
|
+
}),
|
|
514
|
+
response: {
|
|
515
|
+
200: APIResponseDataSchemaFactory({ area: Type.Any() }),
|
|
516
|
+
'4XX': APIErrorSchema
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
export const LSPCoverageRemoveAreaRVS = {
|
|
521
|
+
headers: APIHeadersSchema,
|
|
522
|
+
params: Type.Object({ id: Type.String() }),
|
|
523
|
+
response: {
|
|
524
|
+
200: APIResponseBaseSchema,
|
|
525
|
+
'4XX': APIErrorSchema
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
// ── Routes ────────────────────────────────────────────────────────────────────
|
|
530
|
+
|
|
531
|
+
export const LSPCoverageAddPointsRouteRVS = { headers: APIHeadersSchema, body: Type.Omit(CoveragePointsRouteSchema, ROUTE_OMIT), response: RouteCreatedResponse }
|
|
532
|
+
export const LSPCoverageAddGeoJsonRouteRVS = { headers: APIHeadersSchema, body: Type.Omit(CoverageGeoJsonRouteSchema, ROUTE_OMIT), response: RouteCreatedResponse }
|
|
533
|
+
|
|
534
|
+
export const LSPCoverageUpdatePointsRouteRVS = {
|
|
535
|
+
headers: APIHeadersSchema,
|
|
536
|
+
params: Type.Object({ id: Type.String() }),
|
|
537
|
+
body: Type.Partial(Type.Omit(CoveragePointsRouteSchema, ROUTE_OMIT)),
|
|
538
|
+
response: {
|
|
539
|
+
200: APIResponseDataSchemaFactory({ route: CoveragePointsRouteSchema }),
|
|
540
|
+
'4XX': APIErrorSchema
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
|
|
544
|
+
export const LSPCoverageUpdateGeoJsonRouteRVS = {
|
|
545
|
+
headers: APIHeadersSchema,
|
|
546
|
+
params: Type.Object({ id: Type.String() }),
|
|
547
|
+
body: Type.Partial(Type.Omit(CoverageGeoJsonRouteSchema, ROUTE_OMIT)),
|
|
548
|
+
response: {
|
|
549
|
+
200: APIResponseDataSchemaFactory({ route: CoverageGeoJsonRouteSchema }),
|
|
550
|
+
'4XX': APIErrorSchema
|
|
551
|
+
}
|
|
552
|
+
}
|
|
553
|
+
|
|
554
|
+
export const LSPCoverageListRoutesRVS = {
|
|
555
|
+
headers: APIHeadersSchema,
|
|
556
|
+
querystring: Type.Composite([
|
|
557
|
+
FetchByQueryRequestSchema,
|
|
558
|
+
Type.Object({ status: Type.Optional(EntityStatusSchema) })
|
|
559
|
+
]),
|
|
560
|
+
response: {
|
|
561
|
+
200: APIResponseDataSchemaFactory({ routes: Type.Array(Type.Any()) }),
|
|
562
|
+
'4XX': APIErrorSchema
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
|
|
566
|
+
export const LSPCoverageAddRouteNodeRVS = {
|
|
567
|
+
headers: APIHeadersSchema,
|
|
568
|
+
params: Type.Object({ id: Type.String() }),
|
|
569
|
+
body: LSPNetworkNodeSchema,
|
|
570
|
+
response: {
|
|
571
|
+
200: APIResponseDataSchemaFactory({ route: Type.Any() }),
|
|
572
|
+
'4XX': APIErrorSchema
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
|
|
576
|
+
export const LSPCoverageRemoveRouteNodeRVS = {
|
|
577
|
+
headers: APIHeadersSchema,
|
|
578
|
+
params: Type.Object({ id: Type.String() }),
|
|
579
|
+
body: Type.Object({
|
|
580
|
+
id: Type.Optional(Type.String()),
|
|
581
|
+
addressName: Type.Optional(Type.String())
|
|
582
|
+
}),
|
|
583
|
+
response: {
|
|
584
|
+
200: APIResponseDataSchemaFactory({ route: Type.Any() }),
|
|
585
|
+
'4XX': APIErrorSchema
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
export const LSPCoverageRemoveRouteRVS = {
|
|
590
|
+
headers: APIHeadersSchema,
|
|
591
|
+
params: Type.Object({ id: Type.String() }),
|
|
592
|
+
response: {
|
|
593
|
+
200: APIResponseBaseSchema,
|
|
594
|
+
'4XX': APIErrorSchema
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
// ── Checks ────────────────────────────────────────────────────────────────────
|
|
599
|
+
|
|
600
|
+
export const LSPCoverageCheckRVS = {
|
|
601
|
+
headers: APIHeadersSchema,
|
|
602
|
+
body: Type.Object({
|
|
603
|
+
location: Type.Object({ coordinates: CoordinatesSchema, country: Type.String({ minLength: 2, maxLength: 2 }), city: Type.Optional(Type.String()) }),
|
|
604
|
+
serviceType: Type.Optional(Type.String())
|
|
605
|
+
}),
|
|
606
|
+
response: {
|
|
607
|
+
200: APIResponseDataSchemaFactory({ isCovered: Type.Boolean(), matchingAreas: Type.Array(Type.Any()) }),
|
|
608
|
+
'4XX': APIErrorSchema
|
|
609
|
+
}
|
|
610
|
+
}
|
|
611
|
+
|
|
612
|
+
export const LSPCoverageFindAreasRVS = {
|
|
613
|
+
headers: APIHeadersSchema,
|
|
614
|
+
body: Type.Object({
|
|
615
|
+
location: Type.Object({ coordinates: CoordinatesSchema, country: Type.Optional(Type.String()) }),
|
|
616
|
+
filters: Type.Optional(Type.Any())
|
|
617
|
+
}),
|
|
618
|
+
response: {
|
|
619
|
+
200: APIResponseDataSchemaFactory({ areas: Type.Array(Type.Any()), total: Type.Number() }),
|
|
620
|
+
'4XX': APIErrorSchema
|
|
621
|
+
}
|
|
622
|
+
}
|
|
623
|
+
|
|
624
|
+
export const LSPCoverageGetServiceabilityRVS = {
|
|
625
|
+
headers: APIHeadersSchema,
|
|
626
|
+
querystring: Type.Object({
|
|
627
|
+
lat: Type.String(),
|
|
628
|
+
lng: Type.String(),
|
|
629
|
+
country: Type.Optional(Type.String())
|
|
630
|
+
}),
|
|
631
|
+
response: {
|
|
632
|
+
200: APIResponseDataSchemaFactory({ serviceability: Type.Any() }),
|
|
633
|
+
'4XX': APIErrorSchema
|
|
634
|
+
}
|
|
635
|
+
}
|
|
636
|
+
|
|
637
|
+
export const LSPCoverageValidateBoundaryRVS = {
|
|
638
|
+
headers: APIHeadersSchema,
|
|
639
|
+
body: Type.Object({ boundary: Type.Any() }),
|
|
640
|
+
response: {
|
|
641
|
+
200: APIResponseDataSchemaFactory({ valid: Type.Boolean() }),
|
|
642
|
+
'4XX': APIErrorSchema
|
|
643
|
+
}
|
|
644
|
+
}
|
|
645
|
+
|
|
646
|
+
export const LSPCoverageFindNearestRVS = {
|
|
647
|
+
headers: APIHeadersSchema,
|
|
648
|
+
body: Type.Object({
|
|
649
|
+
location: Type.Object({ coordinates: CoordinatesSchema, country: Type.Optional(Type.String()) })
|
|
650
|
+
}),
|
|
651
|
+
response: {
|
|
652
|
+
200: APIResponseDataSchemaFactory({ nearestArea: Type.Any() }),
|
|
653
|
+
'4XX': APIErrorSchema
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
|
|
657
|
+
export const LSPCoverageCheckRestrictionsRVS = {
|
|
658
|
+
headers: APIHeadersSchema,
|
|
659
|
+
body: Type.Object({
|
|
660
|
+
location: Type.Object({ coordinates: CoordinatesSchema }),
|
|
661
|
+
vehicleType: Type.Optional(VehicleTypeSchema),
|
|
662
|
+
restrictionType: Type.Optional(CoverageRestrictionTypeSchema)
|
|
663
|
+
}),
|
|
664
|
+
response: {
|
|
665
|
+
200: APIResponseDataSchemaFactory({ location: CoordinatesSchema, restrictions: Type.Array(Type.Any()), summary: Type.Any() }),
|
|
666
|
+
'4XX': APIErrorSchema
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
export const LSPCoverageFindParkingZonesRVS = {
|
|
671
|
+
headers: APIHeadersSchema,
|
|
672
|
+
body: Type.Object({
|
|
673
|
+
location: Type.Object({ coordinates: CoordinatesSchema }),
|
|
674
|
+
vehicleType: VehicleTypeSchema,
|
|
675
|
+
radius: Type.Optional(DistanceSchema)
|
|
676
|
+
}),
|
|
677
|
+
response: {
|
|
678
|
+
200: APIResponseDataSchemaFactory({ location: CoordinatesSchema, vehicleType: VehicleTypeSchema, radius: DistanceSchema, zones: Type.Array(Type.Any()), total: Type.Number() }),
|
|
679
|
+
'4XX': APIErrorSchema
|
|
680
|
+
}
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
// ── Analytics ─────────────────────────────────────────────────────────────────
|
|
684
|
+
|
|
685
|
+
export const LSPCoverageGetAnalyticsRVS = { headers: APIHeadersSchema, response: { 200: APIResponseDataSchemaFactory({ analytics: Type.Any() }) } }
|
|
686
|
+
export const LSPCoverageGetParkingCapacityAnalyticsRVS = {
|
|
687
|
+
headers: APIHeadersSchema,
|
|
688
|
+
body: Type.Object({ vehicleType: Type.Optional(Type.String()), includeOccupancy: Type.Optional(Type.Boolean()) }),
|
|
689
|
+
response: { 200: APIResponseDataSchemaFactory({ zones: Type.Array(Type.Any()), total: Type.Number() }) }
|
|
690
|
+
}
|
|
691
|
+
export const LSPCoverageTrackViolationRVS = {
|
|
692
|
+
headers: APIHeadersSchema,
|
|
693
|
+
body: Type.Object({
|
|
694
|
+
location: CoordinatesSchema,
|
|
695
|
+
vehicleType: Type.String(),
|
|
696
|
+
restrictionType: Type.String(),
|
|
697
|
+
severity: Type.Union([Type.Literal('WARNING'), Type.Literal('ENFORCED'), Type.Literal('CRITICAL')]),
|
|
698
|
+
zoneId: Type.String(),
|
|
699
|
+
zoneName: Type.String()
|
|
700
|
+
}),
|
|
701
|
+
response: { 200: APIResponseBaseSchema }
|
|
702
|
+
}
|
|
703
|
+
export const LSPCoverageGetViolationStatsRVS = {
|
|
704
|
+
headers: APIHeadersSchema,
|
|
705
|
+
body: Type.Object({
|
|
706
|
+
startDate: Type.Optional(Type.String({ format: 'date-time' })),
|
|
707
|
+
endDate: Type.Optional(Type.String({ format: 'date-time' })),
|
|
708
|
+
vehicleType: Type.Optional(Type.String()),
|
|
709
|
+
restrictionType: Type.Optional(Type.String()),
|
|
710
|
+
zoneId: Type.Optional(Type.String())
|
|
711
|
+
}),
|
|
712
|
+
response: { 200: APIResponseDataSchemaFactory({ stats: Type.Any() }) }
|
|
713
|
+
}
|
|
714
|
+
export const LSPCoverageGetZoneCapacityRVS = {
|
|
715
|
+
headers: APIHeadersSchema,
|
|
716
|
+
body: Type.Object({ vehicleType: Type.String() }),
|
|
717
|
+
response: { 200: APIResponseDataSchemaFactory({ zones: Type.Array(Type.Any()), total: Type.Number() }) }
|
|
718
|
+
}
|
|
719
|
+
export const LSPCoverageGetRebalancingRecommendationsRVS = {
|
|
720
|
+
headers: APIHeadersSchema,
|
|
721
|
+
body: Type.Object({ vehicleType: Type.String(), maxDistance: Type.Optional(DistanceSchema) }),
|
|
722
|
+
response: { 200: APIResponseDataSchemaFactory({ recommendations: Type.Array(Type.Any()), total: Type.Number() }) }
|
|
723
|
+
}
|
|
724
|
+
export const LSPCoverageAnalyzeDistributionRVS = {
|
|
725
|
+
headers: APIHeadersSchema,
|
|
726
|
+
body: Type.Object({ vehicleType: Type.String() }),
|
|
727
|
+
response: { 200: APIResponseDataSchemaFactory({ analysis: Type.Any() }) }
|
|
728
|
+
}
|
|
729
|
+
export const LSPCoverageFindChargingZonesRVS = {
|
|
730
|
+
headers: APIHeadersSchema,
|
|
731
|
+
body: Type.Object({
|
|
732
|
+
location: CoordinatesSchema,
|
|
733
|
+
vehicleType: Type.String(),
|
|
734
|
+
batteryLevel: Type.Number({ minimum: 0, maximum: 100 }),
|
|
735
|
+
maxDistance: Type.Optional(DistanceSchema)
|
|
736
|
+
}),
|
|
737
|
+
response: { 200: APIResponseDataSchemaFactory({ chargingZones: Type.Array(Type.Any()), total: Type.Number() }) }
|
|
738
|
+
}
|
|
739
|
+
export const LSPCoverageGenerateComplianceReportRVS = {
|
|
740
|
+
headers: APIHeadersSchema,
|
|
741
|
+
body: Type.Object({
|
|
742
|
+
startDate: Type.String({ format: 'date-time' }),
|
|
743
|
+
endDate: Type.String({ format: 'date-time' }),
|
|
744
|
+
vehicleType: Type.Optional(Type.String()),
|
|
745
|
+
zoneId: Type.Optional(Type.String())
|
|
746
|
+
}),
|
|
747
|
+
response: { 200: APIResponseDataSchemaFactory({ report: Type.Any() }) }
|
|
748
|
+
}
|
|
749
|
+
export const LSPCoverageGenerateParkingComplianceReportRVS = {
|
|
750
|
+
headers: APIHeadersSchema,
|
|
751
|
+
body: Type.Object({
|
|
752
|
+
startDate: Type.String({ format: 'date-time' }),
|
|
753
|
+
endDate: Type.String({ format: 'date-time' }),
|
|
754
|
+
vehicleType: Type.String()
|
|
755
|
+
}),
|
|
756
|
+
response: { 200: APIResponseDataSchemaFactory({ report: Type.Any() }) }
|
|
757
|
+
}
|
|
758
|
+
export const LSPCoverageGenerateSpeedComplianceReportRVS = {
|
|
759
|
+
headers: APIHeadersSchema,
|
|
760
|
+
body: Type.Object({
|
|
761
|
+
startDate: Type.String({ format: 'date-time' }),
|
|
762
|
+
endDate: Type.String({ format: 'date-time' }),
|
|
763
|
+
vehicleType: Type.Optional(Type.String())
|
|
764
|
+
}),
|
|
765
|
+
response: { 200: APIResponseDataSchemaFactory({ report: Type.Any() }) }
|
|
766
|
+
}
|
|
767
|
+
export const LSPCoverageExportComplianceDataRVS = {
|
|
768
|
+
headers: APIHeadersSchema,
|
|
769
|
+
body: Type.Object({
|
|
770
|
+
startDate: Type.String({ format: 'date-time' }),
|
|
771
|
+
endDate: Type.String({ format: 'date-time' }),
|
|
772
|
+
format: Type.Union([Type.Literal('JSON'), Type.Literal('CSV'), Type.Literal('PDF')]),
|
|
773
|
+
includeDetails: Type.Optional(Type.Boolean())
|
|
774
|
+
}),
|
|
775
|
+
response: { 200: APIResponseDataSchemaFactory({ export: Type.Any() }) }
|
|
776
|
+
}
|
|
777
|
+
|
|
778
|
+
// ── Validation ────────────────────────────────────────────────────────────────
|
|
779
|
+
|
|
780
|
+
export const LSPCoverageValidateRouteRVS = {
|
|
781
|
+
headers: APIHeadersSchema,
|
|
782
|
+
body: Type.Object({
|
|
783
|
+
waypoints: Type.Array(CoordinatesSchema, { minItems: 2 }),
|
|
784
|
+
vehicleType: Type.String(),
|
|
785
|
+
checkTimeRestrictions: Type.Optional(Type.Boolean()),
|
|
786
|
+
currentTime: Type.Optional(Type.String({ format: 'date-time' })),
|
|
787
|
+
strictMode: Type.Optional(Type.Boolean())
|
|
788
|
+
}),
|
|
789
|
+
response: {
|
|
790
|
+
200: APIResponseDataSchemaFactory({ isCompliant: Type.Boolean(), totalDistance: DistanceSchema, waypoints: Type.Array(Type.Any()), summary: Type.Any(), alternatives: Type.Optional(Type.Array(Type.Any())) }),
|
|
791
|
+
'4XX': APIErrorSchema
|
|
792
|
+
}
|
|
793
|
+
}
|
|
794
|
+
|
|
795
|
+
export const LSPCoverageFindCompliantWaypointsRVS = {
|
|
796
|
+
headers: APIHeadersSchema,
|
|
797
|
+
body: Type.Object({
|
|
798
|
+
start: CoordinatesSchema,
|
|
799
|
+
end: CoordinatesSchema,
|
|
800
|
+
vehicleType: Type.String(),
|
|
801
|
+
samplePoints: Type.Optional(Type.Number({ minimum: 2, maximum: 50 }))
|
|
802
|
+
}),
|
|
803
|
+
response: {
|
|
804
|
+
200: APIResponseDataSchemaFactory({ compliantWaypoints: Type.Array(CoordinatesSchema), total: Type.Number() }),
|
|
805
|
+
'4XX': APIErrorSchema
|
|
806
|
+
}
|
|
807
|
+
}
|
|
808
|
+
|
|
809
|
+
// ─── Validation types ─────────────────────────────────────────────────────────
|
|
810
|
+
|
|
811
|
+
export type LSPCoverageOverviewValidation = { querystring: Static<typeof LSPCoverageOverviewRVS.querystring>, response: Static<(typeof LSPCoverageOverviewRVS.response)[200]> }
|
|
812
|
+
|
|
813
|
+
export type LSPCoverageAddCityAreaValidation = { body: Static<typeof LSPCoverageAddCityAreaRVS.body>, response: Static<(typeof LSPCoverageAddCityAreaRVS.response)[201]> }
|
|
814
|
+
export type LSPCoverageAddTownAreaValidation = { body: Static<typeof LSPCoverageAddTownAreaRVS.body>, response: Static<(typeof LSPCoverageAddTownAreaRVS.response)[201]> }
|
|
815
|
+
export type LSPCoverageAddMetroAreaValidation = { body: Static<typeof LSPCoverageAddMetroAreaRVS.body>, response: Static<(typeof LSPCoverageAddMetroAreaRVS.response)[201]> }
|
|
816
|
+
export type LSPCoverageAddCountyAreaValidation = { body: Static<typeof LSPCoverageAddCountyAreaRVS.body>, response: Static<(typeof LSPCoverageAddCountyAreaRVS.response)[201]> }
|
|
817
|
+
export type LSPCoverageAddStateAreaValidation = { body: Static<typeof LSPCoverageAddStateAreaRVS.body>, response: Static<(typeof LSPCoverageAddStateAreaRVS.response)[201]> }
|
|
818
|
+
export type LSPCoverageAddRegionAreaValidation = { body: Static<typeof LSPCoverageAddRegionAreaRVS.body>, response: Static<(typeof LSPCoverageAddRegionAreaRVS.response)[201]> }
|
|
819
|
+
export type LSPCoverageAddCountryAreaValidation = { body: Static<typeof LSPCoverageAddCountryAreaRVS.body>, response: Static<(typeof LSPCoverageAddCountryAreaRVS.response)[201]> }
|
|
820
|
+
export type LSPCoverageAddCustomAreaValidation = { body: Static<typeof LSPCoverageAddCustomAreaRVS.body>, response: Static<(typeof LSPCoverageAddCustomAreaRVS.response)[201]> }
|
|
821
|
+
|
|
822
|
+
export type LSPCoverageUpdateCityAreaValidation = { params: Static<typeof LSPCoverageUpdateCityAreaRVS.params>, body: Static<typeof LSPCoverageUpdateCityAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateCityAreaRVS.response)[200]> }
|
|
823
|
+
export type LSPCoverageUpdateTownAreaValidation = { params: Static<typeof LSPCoverageUpdateTownAreaRVS.params>, body: Static<typeof LSPCoverageUpdateTownAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateTownAreaRVS.response)[200]> }
|
|
824
|
+
export type LSPCoverageUpdateMetroAreaValidation = { params: Static<typeof LSPCoverageUpdateMetroAreaRVS.params>, body: Static<typeof LSPCoverageUpdateMetroAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateMetroAreaRVS.response)[200]> }
|
|
825
|
+
export type LSPCoverageUpdateCountyAreaValidation = { params: Static<typeof LSPCoverageUpdateCountyAreaRVS.params>, body: Static<typeof LSPCoverageUpdateCountyAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateCountyAreaRVS.response)[200]> }
|
|
826
|
+
export type LSPCoverageUpdateStateAreaValidation = { params: Static<typeof LSPCoverageUpdateStateAreaRVS.params>, body: Static<typeof LSPCoverageUpdateStateAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateStateAreaRVS.response)[200]> }
|
|
827
|
+
export type LSPCoverageUpdateRegionAreaValidation = { params: Static<typeof LSPCoverageUpdateRegionAreaRVS.params>, body: Static<typeof LSPCoverageUpdateRegionAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateRegionAreaRVS.response)[200]> }
|
|
828
|
+
export type LSPCoverageUpdateCountryAreaValidation = { params: Static<typeof LSPCoverageUpdateCountryAreaRVS.params>, body: Static<typeof LSPCoverageUpdateCountryAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateCountryAreaRVS.response)[200]> }
|
|
829
|
+
export type LSPCoverageUpdateCustomAreaValidation = { params: Static<typeof LSPCoverageUpdateCustomAreaRVS.params>, body: Static<typeof LSPCoverageUpdateCustomAreaRVS.body>, response: Static<(typeof LSPCoverageUpdateCustomAreaRVS.response)[200]> }
|
|
830
|
+
|
|
831
|
+
export type LSPCoverageGetAreaValidation = { params: Static<typeof LSPCoverageGetAreaRVS.params>, response: Static<(typeof LSPCoverageGetAreaRVS.response)[200]> }
|
|
832
|
+
export type LSPCoverageGetRouteValidation = { params: Static<typeof LSPCoverageGetRouteRVS.params>, response: Static<(typeof LSPCoverageGetRouteRVS.response)[200]> }
|
|
833
|
+
export type LSPCoverageListAreasValidation = { querystring: Static<typeof LSPCoverageListAreasRVS.querystring>, response: Static<(typeof LSPCoverageListAreasRVS.response)[200]> }
|
|
834
|
+
export type LSPCoverageLinkNodeValidation = { params: Static<typeof LSPCoverageLinkNodeRVS.params>, body: Static<typeof LSPCoverageLinkNodeRVS.body>, response: Static<(typeof LSPCoverageLinkNodeRVS.response)[200]> }
|
|
835
|
+
export type LSPCoverageUnlinkNodeValidation = { params: Static<typeof LSPCoverageUnlinkNodeRVS.params>, body: Static<typeof LSPCoverageUnlinkNodeRVS.body>, response: Static<(typeof LSPCoverageUnlinkNodeRVS.response)[200]> }
|
|
836
|
+
export type LSPCoverageRemoveAreaValidation = { params: Static<typeof LSPCoverageRemoveAreaRVS.params>, response: Static<(typeof LSPCoverageRemoveAreaRVS.response)[200]> }
|
|
837
|
+
|
|
838
|
+
export type LSPCoverageAddPointsRouteValidation = { body: Static<typeof LSPCoverageAddPointsRouteRVS.body>, response: Static<(typeof LSPCoverageAddPointsRouteRVS.response)[201]> }
|
|
839
|
+
export type LSPCoverageAddGeoJsonRouteValidation = { body: Static<typeof LSPCoverageAddGeoJsonRouteRVS.body>, response: Static<(typeof LSPCoverageAddGeoJsonRouteRVS.response)[201]> }
|
|
840
|
+
export type LSPCoverageUpdatePointsRouteValidation = { params: Static<typeof LSPCoverageUpdatePointsRouteRVS.params>, body: Static<typeof LSPCoverageUpdatePointsRouteRVS.body>, response: Static<(typeof LSPCoverageUpdatePointsRouteRVS.response)[200]> }
|
|
841
|
+
export type LSPCoverageUpdateGeoJsonRouteValidation = { params: Static<typeof LSPCoverageUpdateGeoJsonRouteRVS.params>, body: Static<typeof LSPCoverageUpdateGeoJsonRouteRVS.body>, response: Static<(typeof LSPCoverageUpdateGeoJsonRouteRVS.response)[200]> }
|
|
842
|
+
export type LSPCoverageListRoutesValidation = { querystring: Static<typeof LSPCoverageListRoutesRVS.querystring>, response: Static<(typeof LSPCoverageListRoutesRVS.response)[200]> }
|
|
843
|
+
export type LSPCoverageAddRouteNodeValidation = { params: Static<typeof LSPCoverageAddRouteNodeRVS.params>, body: Static<typeof LSPCoverageAddRouteNodeRVS.body>, response: Static<(typeof LSPCoverageAddRouteNodeRVS.response)[200]> }
|
|
844
|
+
export type LSPCoverageRemoveRouteNodeValidation = { params: Static<typeof LSPCoverageRemoveRouteNodeRVS.params>, body: Static<typeof LSPCoverageRemoveRouteNodeRVS.body>, response: Static<(typeof LSPCoverageRemoveRouteNodeRVS.response)[200]> }
|
|
845
|
+
export type LSPCoverageRemoveRouteValidation = { params: Static<typeof LSPCoverageRemoveRouteRVS.params>, response: Static<(typeof LSPCoverageRemoveRouteRVS.response)[200]> }
|
|
846
|
+
|
|
847
|
+
export type LSPCoverageCheckValidation = { body: Static<typeof LSPCoverageCheckRVS.body>, response: Static<(typeof LSPCoverageCheckRVS.response)[200]> }
|
|
848
|
+
export type LSPCoverageFindAreasValidation = { body: Static<typeof LSPCoverageFindAreasRVS.body>, response: Static<(typeof LSPCoverageFindAreasRVS.response)[200]> }
|
|
849
|
+
export type LSPCoverageGetServiceabilityValidation = { querystring: Static<typeof LSPCoverageGetServiceabilityRVS.querystring>, response: Static<(typeof LSPCoverageGetServiceabilityRVS.response)[200]> }
|
|
850
|
+
export type LSPCoverageValidateBoundaryValidation = { body: Static<typeof LSPCoverageValidateBoundaryRVS.body>, response: Static<(typeof LSPCoverageValidateBoundaryRVS.response)[200]> }
|
|
851
|
+
export type LSPCoverageFindNearestValidation = { body: Static<typeof LSPCoverageFindNearestRVS.body>, response: Static<(typeof LSPCoverageFindNearestRVS.response)[200]> }
|
|
852
|
+
export type LSPCoverageCheckRestrictionsValidation = { body: Static<typeof LSPCoverageCheckRestrictionsRVS.body>, response: Static<(typeof LSPCoverageCheckRestrictionsRVS.response)[200]> }
|
|
853
|
+
export type LSPCoverageFindParkingZonesValidation = { body: Static<typeof LSPCoverageFindParkingZonesRVS.body>, response: Static<(typeof LSPCoverageFindParkingZonesRVS.response)[200]> }
|
|
854
|
+
|
|
855
|
+
export type LSPCoverageGetAnalyticsValidation = { response: Static<(typeof LSPCoverageGetAnalyticsRVS.response)[200]> }
|
|
856
|
+
export type LSPCoverageGetParkingCapacityAnalyticsValidation = { body: Static<typeof LSPCoverageGetParkingCapacityAnalyticsRVS.body>, response: Static<(typeof LSPCoverageGetParkingCapacityAnalyticsRVS.response)[200]> }
|
|
857
|
+
export type LSPCoverageTrackViolationValidation = { body: Static<typeof LSPCoverageTrackViolationRVS.body>, response: Static<(typeof LSPCoverageTrackViolationRVS.response)[200]> }
|
|
858
|
+
export type LSPCoverageGetViolationStatsValidation = { body: Static<typeof LSPCoverageGetViolationStatsRVS.body>, response: Static<(typeof LSPCoverageGetViolationStatsRVS.response)[200]> }
|
|
859
|
+
export type LSPCoverageGetZoneCapacityValidation = { body: Static<typeof LSPCoverageGetZoneCapacityRVS.body>, response: Static<(typeof LSPCoverageGetZoneCapacityRVS.response)[200]> }
|
|
860
|
+
export type LSPCoverageGetRebalancingRecommendationsValidation = { body: Static<typeof LSPCoverageGetRebalancingRecommendationsRVS.body>, response: Static<(typeof LSPCoverageGetRebalancingRecommendationsRVS.response)[200]> }
|
|
861
|
+
export type LSPCoverageAnalyzeDistributionValidation = { body: Static<typeof LSPCoverageAnalyzeDistributionRVS.body>, response: Static<(typeof LSPCoverageAnalyzeDistributionRVS.response)[200]> }
|
|
862
|
+
export type LSPCoverageFindChargingZonesValidation = { body: Static<typeof LSPCoverageFindChargingZonesRVS.body>, response: Static<(typeof LSPCoverageFindChargingZonesRVS.response)[200]> }
|
|
863
|
+
export type LSPCoverageGenerateComplianceReportValidation = { body: Static<typeof LSPCoverageGenerateComplianceReportRVS.body>, response: Static<(typeof LSPCoverageGenerateComplianceReportRVS.response)[200]> }
|
|
864
|
+
export type LSPCoverageGenerateParkingComplianceReportValidation = { body: Static<typeof LSPCoverageGenerateParkingComplianceReportRVS.body>, response: Static<(typeof LSPCoverageGenerateParkingComplianceReportRVS.response)[200]> }
|
|
865
|
+
export type LSPCoverageGenerateSpeedComplianceReportValidation = { body: Static<typeof LSPCoverageGenerateSpeedComplianceReportRVS.body>, response: Static<(typeof LSPCoverageGenerateSpeedComplianceReportRVS.response)[200]> }
|
|
866
|
+
export type LSPCoverageExportComplianceDataValidation = { body: Static<typeof LSPCoverageExportComplianceDataRVS.body>, response: Static<(typeof LSPCoverageExportComplianceDataRVS.response)[200]> }
|
|
867
|
+
|
|
868
|
+
export type LSPCoverageValidateRouteValidation = { body: Static<typeof LSPCoverageValidateRouteRVS.body>, response: Static<(typeof LSPCoverageValidateRouteRVS.response)[200]> }
|
|
869
|
+
export type LSPCoverageFindCompliantWaypointsValidation = { body: Static<typeof LSPCoverageFindCompliantWaypointsRVS.body>, response: Static<(typeof LSPCoverageFindCompliantWaypointsRVS.response)[200]> }
|