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 accessories.saveTurnoutOrder 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 exampleAccessoriesSaveTurnoutOrder(client: RailDeckDirectIntegrationClient) { return client.accessories.saveTurnoutOrder( "23", "31", { "requestId": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa", "reviewedIds": [ "7", "8" ], "orderedIds": [ "8", "7" ] }, {} ); } /** * Calls accessories.getTurnoutConfiguration 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 exampleAccessoriesGetTurnoutConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.getTurnoutConfiguration( "1", "18", "194", {} ); } /** * Calls accessories.saveTurnoutConfiguration 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 exampleAccessoriesSaveTurnoutConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.saveTurnoutConfiguration( "1", "18", { "requestId": "11111111-1111-4111-8111-111111111111", "target": { "operation": "update", "accessoryId": "194", "expectedRevision": 7 }, "configuration": { "displayName": "{{fixtureDisplayName}}", "controllerId": "22", "decoderAddress": 61, "decoderSubaddress": 0, "notes": "Station throat.\nKeep the siding clear.", "definition": { "design": "wye", "orientation": 90, "pathAState": "thrown" }, "destinations": { "closed": { "label": "Platform 1", "decoderAddress": null, "decoderSubaddress": null, "decoderOutput": 0 }, "thrown": { "label": "Goods loop", "decoderAddress": null, "decoderSubaddress": null, "decoderOutput": 1 } } } }, {} ); } /** * Calls accessories.deleteTurnout 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 exampleAccessoriesDeleteTurnout(client: RailDeckDirectIntegrationClient) { return client.accessories.deleteTurnout( "23", "31", { "requestId": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa", "accessoryId": "7", "expectedRevision": 4 }, {} ); } /** * Calls accessories.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 exampleAccessoriesList(client: RailDeckDirectIntegrationClient) { return client.accessories.list( "1", "18", {} ); } /** * Calls accessories.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 exampleAccessoriesCreate(client: RailDeckDirectIntegrationClient) { return client.accessories.create( "account 1", "layout-1", { "displayName": "{{fixtureDisplayName}}", "accessoryType": "signal", "controllerId": "controller-1", "decoderAddress": 61 } ); } /** * Calls accessories.listTypes 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 exampleAccessoriesListTypes(client: RailDeckDirectIntegrationClient) { return client.accessories.listTypes( "account 1", "layout-1" ); } /** * Calls accessories.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 exampleAccessoriesGet(client: RailDeckDirectIntegrationClient) { return client.accessories.get( "1", "18", "195", {} ); } /** * Calls accessories.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 exampleAccessoriesUpdate(client: RailDeckDirectIntegrationClient) { return client.accessories.update( "account 1", "layout 1", "accessory 1", { "displayName": "{{fixtureDisplayName}}" } ); } /** * Calls accessories.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 exampleAccessoriesDelete(client: RailDeckDirectIntegrationClient) { return client.accessories.delete( "account 1", "layout 1", "accessory 1" ); } /** * Calls accessories.listStates 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 exampleAccessoriesListStates(client: RailDeckDirectIntegrationClient) { return client.accessories.listStates( "account 1", "layout 1", "accessory 1", {} ); } /** * Calls accessories.replaceStates 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 exampleAccessoriesReplaceStates(client: RailDeckDirectIntegrationClient) { return client.accessories.replaceStates( "account 1", "layout-1", "accessory-2", { "states": [ { "stateKey": "green", "label": "Green", "decoderAddress": 61, "decoderOutput": 1 } ] } ); } /** * Calls accessories.applyCatalogueProfile 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 exampleAccessoriesApplyCatalogueProfile(client: RailDeckDirectIntegrationClient) { return client.accessories.applyCatalogueProfile( "account 1", "layout-1", "accessory-2", { "mode": "dry_run", "productProfileId": "product-1", "options": { "states": "replace", "metadata": "merge" } } ); } /** * Calls accessories.operateCoordinatedTurnout 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 exampleAccessoriesOperateCoordinatedTurnout(client: RailDeckDirectIntegrationClient) { return client.accessories.operateCoordinatedTurnout( "1", "2", "20", { "requestId": "00000000-0000-4000-8000-000000000030", "expectedRevision": 5, "path": "through" }, {} ); } /** * Calls accessories.recoverCoordinatedTurnoutOperation 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 exampleAccessoriesRecoverCoordinatedTurnoutOperation(client: RailDeckDirectIntegrationClient) { return client.accessories.recoverCoordinatedTurnoutOperation( "1", "2", "20", { "requestId": "00000000-0000-4000-8000-000000000030", "expectedRevision": 5, "path": "through", "parentCommandId": "00000000-0000-4000-8000-000000000020" }, {} ); } /** * Calls accessories.tryTurnoutConnection 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 exampleAccessoriesTryTurnoutConnection(client: RailDeckDirectIntegrationClient) { return client.accessories.tryTurnoutConnection( "1", "18", { "requestId": "11111111-1111-4111-8111-111111111111", "target": { "operation": "update", "accessoryId": "194", "expectedRevision": 7 }, "configuration": { "displayName": "{{fixtureDisplayName}}", "controllerId": "22", "decoderAddress": 61, "decoderSubaddress": 0, "notes": "Station throat.\nKeep the siding clear.", "definition": { "design": "wye", "orientation": 90, "pathAState": "thrown" }, "destinations": { "closed": { "label": "Platform 1", "decoderAddress": null, "decoderSubaddress": null, "decoderOutput": 0 }, "thrown": { "label": "Goods loop", "decoderAddress": null, "decoderSubaddress": null, "decoderOutput": 1 } } }, "reviewId": "22222222-2222-4222-8222-222222222222", "member": "4", "state": "closed" }, {} ); } /** * Calls accessories.getCoordinatedTurnoutConfiguration 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 exampleAccessoriesGetCoordinatedTurnoutConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.getCoordinatedTurnoutConfiguration( "1", "18", "240", {} ); } /** * Calls accessories.saveCoordinatedTurnoutConfiguration 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 exampleAccessoriesSaveCoordinatedTurnoutConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.saveCoordinatedTurnoutConfiguration( "1", "18", { "requestId": "11111111-1111-4111-8111-111111111111", "target": { "operation": "update", "accessoryId": "240", "expectedRevision": 7 }, "configuration": { "displayName": "{{fixtureDisplayName}}", "notes": "Keep both tracks clear.\nStation approach.", "definition": { "design": "single-crossover", "orientation": 90, "mirrored": true }, "members": [ { "member": "1", "throughState": "closed", "source": "existing", "accessoryId": "194", "expectedRevision": 3 }, { "member": "2", "throughState": "thrown", "source": "existing", "accessoryId": "195", "expectedRevision": 4 } ] } }, {} ); } /** * Calls accessories.getSpecifications 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 exampleAccessoriesGetSpecifications(client: RailDeckDirectIntegrationClient) { return client.accessories.getSpecifications( "1", "18", "194", {} ); } /** * Calls accessories.saveSpecifications 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 exampleAccessoriesSaveSpecifications(client: RailDeckDirectIntegrationClient) { return client.accessories.saveSpecifications( "1", "18", { "requestId": "22222222-2222-4222-8222-222222222222", "target": { "operation": "update", "accessoryId": "194", "expectedRevision": 1 }, "specifications": { "manufacturer": "Model Lighting", "modelName": "Station lamp", "productCode": "L-10", "scale": "OO", "decoderModel": "Accessory controller" } }, {} ); } /** * Calls accessories.tryLightConnection 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 exampleAccessoriesTryLightConnection(client: RailDeckDirectIntegrationClient) { return client.accessories.tryLightConnection( "1", "18", { "requestId": "11111111-1111-4111-8111-111111111111", "accessoryId": "194", "expectedRevision": 7, "state": "on" }, {} ); } /** * Calls accessories.confirmLightConnection 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 exampleAccessoriesConfirmLightConnection(client: RailDeckDirectIntegrationClient) { return client.accessories.confirmLightConnection( "1", "18", { "requestId": "22222222-2222-4222-8222-222222222222", "accessoryId": "194", "expectedRevision": 7, "observations": { "on": "11111111-1111-4111-8111-111111111111", "off": "33333333-3333-4333-8333-333333333333" } }, {} ); } /** * Calls accessories.getSignalConfiguration 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 exampleAccessoriesGetSignalConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.getSignalConfiguration( "1", "1", "2", {} ); } /** * Calls accessories.saveSignalConfiguration 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 exampleAccessoriesSaveSignalConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.saveSignalConfiguration( "1", "1", { "requestId": "1174bd51-f61b-4dac-8a0d-2e9435d7075e", "target": { "operation": "update", "accessoryId": "2", "expectedRevision": 11 }, "configuration": { "displayName": "{{fixtureDisplayName}}", "controllerId": "1", "definition": { "design": "four-aspect", "quadrant": null }, "notes": null, "connections": [ { "indication": "red", "label": "Stop", "address": 86, "output": 0 }, { "indication": "yellow", "label": "Caution", "address": 86, "output": 1 }, { "indication": "double-yellow", "label": "Double yellow", "address": 87, "output": 0 }, { "indication": "green", "label": "Clear", "address": 87, "output": 1 } ], "operating": { "cycling": true, "indicationOrder": [ "green", "double-yellow", "yellow", "red" ] }, "photographs": [ { "indication": "red", "photographId": "1" } ] } }, {} ); } /** * Calls accessories.saveSignalOrder 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 exampleAccessoriesSaveSignalOrder(client: RailDeckDirectIntegrationClient) { return client.accessories.saveSignalOrder( "1", "1", { "requestId": "58dd936f-36b2-46e2-92aa-91076ae38e83", "reviewedIds": [ "accessory:6", "linked:1" ], "orderedIds": [ "linked:1", "accessory:6" ], "collection": "library" }, {} ); } /** * Calls accessories.getLightConfiguration 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 exampleAccessoriesGetLightConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.getLightConfiguration( "1", "18", "194", {} ); } /** * Calls accessories.saveLightConfiguration 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 exampleAccessoriesSaveLightConfiguration(client: RailDeckDirectIntegrationClient) { return client.accessories.saveLightConfiguration( "1", "18", { "requestId": "22222222-2222-4222-8222-222222222222", "target": { "operation": "update", "accessoryId": "194", "expectedRevision": 7 }, "configuration": { "displayName": "{{fixtureDisplayName}}", "controllerId": null, "picture": "shop", "notes": "Front window\n\nSeparate from the platform lamps.", "connections": { "off": { "decoderAddress": 70, "decoderSubaddress": null, "decoderOutput": 1 }, "on": { "decoderAddress": 70, "decoderSubaddress": null, "decoderOutput": 0 } } } }, {} ); } /** * Calls accessories.saveLightOrder 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 exampleAccessoriesSaveLightOrder(client: RailDeckDirectIntegrationClient) { return client.accessories.saveLightOrder( "23", "31", { "requestId": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa", "reviewedIds": [ "accessory:7", "linked:7" ], "orderedIds": [ "linked:7", "accessory:7" ], "collection": "library" }, {} ); } /** * Calls accessories.deleteLight 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 exampleAccessoriesDeleteLight(client: RailDeckDirectIntegrationClient) { return client.accessories.deleteLight( "23", "31", { "requestId": "aaaaaaaa-aaaa-4aaa-8aaa-aaaaaaaaaaaa", "accessoryId": "7", "expectedRevision": 4 }, {} ); }