import type { RailDeckDirectIntegrationClient } from '@raildeck/frontend-sdk/direct-integration'; // Fixture values illustrate the source contract. Use reviewed development records. // Importing this module performs no requests. Every mutation requires an explicit call. /** * Calls routes.saveLinkedAccessoryOrder with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesSaveLinkedAccessoryOrder(client: RailDeckDirectIntegrationClient) { return client.routes.saveLinkedAccessoryOrder( "23", "31", { "requestId": "7239eabc-0000-4000-8000-000000000003", "reviewedIds": [ "8", "9" ], "orderedIds": [ "9", "8" ] }, {} ); } /** * Calls routes.analyseActivation with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesAnalyseActivation(client: RailDeckDirectIntegrationClient) { return client.routes.analyseActivation( "account-1", "layout-1", "route-2" ); } /** * Calls routes.activate with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesActivate(client: RailDeckDirectIntegrationClient) { return client.routes.activate( "1", "1", "1", { "requestId": "b623d76d-c1d0-4c6d-9d2a-2b9521b20c36", "expectedRevision": 5, "priority": null, "expiresInMs": 10000 }, {} ); } /** * Calls routes.listLinkedAccessories with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesListLinkedAccessories(client: RailDeckDirectIntegrationClient) { return client.routes.listLinkedAccessories( "1", "1", {} ); } /** * Calls routes.createLinkedAccessory with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesCreateLinkedAccessory(client: RailDeckDirectIntegrationClient) { return client.routes.createLinkedAccessory( "23", "31", { "requestId": "a4000000-bbbb-4ccc-8ddd-000000000001", "definition": { "displayName": "{{fixtureDisplayName}}", "description": "Open the station.\n\nKeep the goods yard separate.", "enabled": true, "metadata": { "retained": "Group information" }, "choices": [ { "choiceId": "a4000000-bbbb-4ccc-8ddd-000000000002", "displayName": "Arrangement a4000000-bbbb-4ccc-8ddd-000000000002", "steps": [ { "accessoryId": "91", "targetState": "closed", "sequenceOrder": 1, "delayMs": 0, "metadata": {} }, { "accessoryId": "92", "targetState": "thrown", "sequenceOrder": 2, "delayMs": 0, "metadata": {} }, { "accessoryId": "93", "targetState": "on", "sequenceOrder": 3, "delayMs": 0, "metadata": {} }, { "accessoryId": "94", "targetState": "off", "sequenceOrder": 4, "delayMs": 0, "metadata": {} } ] }, { "choiceId": "a4000000-bbbb-4ccc-8ddd-000000000003", "displayName": "Arrangement a4000000-bbbb-4ccc-8ddd-000000000003", "steps": [ { "accessoryId": "91", "targetState": "thrown", "sequenceOrder": 1, "delayMs": 0, "metadata": {} }, { "accessoryId": "92", "targetState": "closed", "sequenceOrder": 2, "delayMs": 0, "metadata": {} }, { "accessoryId": "93", "targetState": "off", "sequenceOrder": 3, "delayMs": 0, "metadata": {} }, { "accessoryId": "94", "targetState": "on", "sequenceOrder": 4, "delayMs": 0, "metadata": {} } ] } ] } }, {} ); } /** * Calls routes.getLinkedAccessory with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesGetLinkedAccessory(client: RailDeckDirectIntegrationClient) { return client.routes.getLinkedAccessory( "1", "1", "1", {} ); } /** * Calls routes.updateLinkedAccessory with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesUpdateLinkedAccessory(client: RailDeckDirectIntegrationClient) { return client.routes.updateLinkedAccessory( "1", "1", "1", { "requestId": "002ed11c-0391-4900-af65-0f3dd51f81ce", "expectedRevision": 8, "definition": { "displayName": "{{fixtureDisplayName}}", "description": "Open the station.\n\nKeep the goods yard separate.", "enabled": true, "metadata": { "raildeckLibrary": "signal", "retained": "Group information" }, "choices": [ { "choiceId": "a4000000-bbbb-4ccc-8ddd-000000000002", "displayName": "Arrangement a4000000-bbbb-4ccc-8ddd-000000000002", "steps": [ { "accessoryId": "2", "targetState": "closed", "sequenceOrder": 1, "delayMs": 0, "metadata": {} }, { "accessoryId": "3", "targetState": "thrown", "sequenceOrder": 2, "delayMs": 0, "metadata": {} }, { "accessoryId": "1", "targetState": "on", "sequenceOrder": 3, "delayMs": 0, "metadata": {} }, { "accessoryId": "4", "targetState": "off", "sequenceOrder": 4, "delayMs": 0, "metadata": {} }, { "accessoryId": "5", "targetState": "green", "sequenceOrder": 5, "delayMs": 0, "metadata": {} } ] }, { "choiceId": "a4000000-bbbb-4ccc-8ddd-000000000003", "displayName": "Arrangement a4000000-bbbb-4ccc-8ddd-000000000003", "steps": [ { "accessoryId": "2", "targetState": "thrown", "sequenceOrder": 1, "delayMs": 0, "metadata": {} }, { "accessoryId": "3", "targetState": "closed", "sequenceOrder": 2, "delayMs": 0, "metadata": {} }, { "accessoryId": "1", "targetState": "off", "sequenceOrder": 3, "delayMs": 0, "metadata": {} }, { "accessoryId": "4", "targetState": "on", "sequenceOrder": 4, "delayMs": 0, "metadata": {} }, { "accessoryId": "5", "targetState": "red", "sequenceOrder": 5, "delayMs": 0, "metadata": {} } ] } ] } }, {} ); } /** * Calls routes.deleteLinkedAccessory with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesDeleteLinkedAccessory(client: RailDeckDirectIntegrationClient) { return client.routes.deleteLinkedAccessory( "23", "31", "8", { "requestId": "a4000000-bbbb-4ccc-8ddd-000000000001", "expectedRevision": 5 }, {} ); } /** * Calls routes.analyseLinkedAccessoryActivation with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesAnalyseLinkedAccessoryActivation(client: RailDeckDirectIntegrationClient) { return client.routes.analyseLinkedAccessoryActivation( "account-1", "layout-1", "linked-2" ); } /** * Calls routes.activateLinkedAccessory with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesActivateLinkedAccessory(client: RailDeckDirectIntegrationClient) { return client.routes.activateLinkedAccessory( "1", "1", "1", { "requestId": "82b54bc5-bd6b-41a9-82b1-ebaed84b8b7d", "expectedRevision": 13, "priority": null, "expiresInMs": 2000, "choiceId": "a4000000-bbbb-4ccc-8ddd-000000000002" }, {} ); } /** * Calls routes.cancelExecution with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesCancelExecution(client: RailDeckDirectIntegrationClient) { return client.routes.cancelExecution( "account-1", "layout-1", "command-route-1", { "reason": "{{reviewedReason}}" } ); } /** * Calls routes.list with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesList(client: RailDeckDirectIntegrationClient) { return client.routes.list( "23", "31", {} ); } /** * Calls routes.get with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesGet(client: RailDeckDirectIntegrationClient) { return client.routes.get( "1", "1", "1", {} ); } /** * Calls routes.create with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesCreate(client: RailDeckDirectIntegrationClient) { return client.routes.create( "23", "31", { "requestId": "aabbccdd-aabb-4abb-8abb-aabbccddeeff", "definition": { "displayName": "{{fixtureDisplayName}}", "description": "Use the reception road.\n\nThe yard lamps are separate.", "enabled": true, "metadata": { "raildeckPicture": { "photographId": null, "symbol": "night" }, "retained": { "label": "Existing route information" } }, "steps": [ { "accessoryId": "91", "targetState": "thrown", "sequenceOrder": 1, "delayMs": 0, "metadata": { "purpose": "Reception road" } }, { "accessoryId": "92", "targetState": "on", "sequenceOrder": 2, "delayMs": 250, "metadata": {} } ] } }, {} ); } /** * Calls routes.update with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesUpdate(client: RailDeckDirectIntegrationClient) { return client.routes.update( "1", "1", "1", { "requestId": "c8821c01-eb90-4324-9079-c83d76ba8444", "expectedRevision": 2, "definition": { "displayName": "{{fixtureDisplayName}}", "description": null, "enabled": true, "metadata": {}, "steps": [ { "accessoryId": "1", "targetState": "closed", "sequenceOrder": 1, "delayMs": 0, "metadata": {} }, { "accessoryId": "3", "targetState": "on", "sequenceOrder": 2, "delayMs": 0, "metadata": {} }, { "accessoryId": "2", "targetState": "green", "sequenceOrder": 3, "delayMs": 0, "metadata": {} } ] } }, {} ); } /** * Calls routes.delete with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesDelete(client: RailDeckDirectIntegrationClient) { return client.routes.delete( "23", "31", "12", { "requestId": "aabbccdd-aabb-4abb-8abb-aabbccddeeff", "expectedRevision": 10 }, {} ); } /** * Calls routes.saveOrder with retained, non-production fixture values. * @param client - Configured source client; use an isolated development environment. * @returns The SDK result; failures propagate without automatic retry. */ export async function exampleRoutesSaveOrder(client: RailDeckDirectIntegrationClient) { return client.routes.saveOrder( "23", "31", { "requestId": "aabbccdd-aabb-4abb-8abb-aabbccddeeff", "reviewedIds": [ "12", "13" ], "orderedIds": [ "13", "12" ] }, {} ); }