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 rollingStock.related 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 exampleRollingStockRelated(client: RailDeckDirectIntegrationClient) { return client.rollingStock.related( "23", "7", {} ); } /** * Calls rollingStock.previewDuplication 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 exampleRollingStockPreviewDuplication(client: RailDeckDirectIntegrationClient) { return client.rollingStock.previewDuplication( "23", "7", {} ); } /** * Calls rollingStock.duplicate 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 exampleRollingStockDuplicate(client: RailDeckDirectIntegrationClient) { return client.rollingStock.duplicate( "23", "7", { "displayName": "{{fixtureDisplayName}}", "expectedSourceRevision": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "runningNumber": null, "includeNotes": false, "includePhotographs": true } ); } /** * Calls rollingStock.listForLayout 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 exampleRollingStockListForLayout(client: RailDeckDirectIntegrationClient) { return client.rollingStock.listForLayout( "account 1", "layout/2", {} ); } /** * Calls rollingStock.assignToLayout 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 exampleRollingStockAssignToLayout(client: RailDeckDirectIntegrationClient) { return client.rollingStock.assignToLayout( "account 1", "layout/2", "stock/3" ); } /** * Calls rollingStock.removeFromLayout 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 exampleRollingStockRemoveFromLayout(client: RailDeckDirectIntegrationClient) { return client.rollingStock.removeFromLayout( "account 1", "layout/2", "stock/3" ); } /** * Calls rollingStock.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 exampleRollingStockList(client: RailDeckDirectIntegrationClient) { return client.rollingStock.list( "account 1", {} ); } /** * Calls rollingStock.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 exampleRollingStockCreate(client: RailDeckDirectIntegrationClient) { return client.rollingStock.create( "account 1", { "displayName": "{{fixtureDisplayName}}", "category": "coach", "manufacturer": "Bachmann", "className": "Mk1 SK", "runningNumber": "E25624", "emptyWeightGrams": 145, "ladenWeightGrams": 180, "maxSafeSpeedPercent": 85 } ); } /** * Calls rollingStock.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 exampleRollingStockGet(client: RailDeckDirectIntegrationClient) { return client.rollingStock.get( "account 1", "stock-2", {} ); } /** * Calls rollingStock.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 exampleRollingStockUpdate(client: RailDeckDirectIntegrationClient) { return client.rollingStock.update( "account 1", "stock-2", { "expectedUpdatedAt": "2026-07-02T09:00:00.000Z", "displayName": "{{fixtureDisplayName}}", "notes": "Runs in the demonstration rake." } ); } /** * Calls rollingStock.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 exampleRollingStockDelete(client: RailDeckDirectIntegrationClient) { return client.rollingStock.delete( "account 1", "stock-2" ); } /** * Calls rollingStock.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 exampleRollingStockApplyCatalogueProfile(client: RailDeckDirectIntegrationClient) { return client.rollingStock.applyCatalogueProfile( "account 1", "stock-2", { "mode": "dry_run", "productProfileId": "product-rolling-stock-1", "options": { "productDetails": "merge" } } ); }