{"_id":"@breadstone/ziegel-platform-transaction","_rev":"9-4b628dd35dccdcf3bc19aa1cf2fa5589","name":"@breadstone/ziegel-platform-transaction","dist-tags":{"latest":"0.0.9"},"versions":{"0.0.1":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.1","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.1","maintainers":[{"name":"ruederennes","email":"realsancezz@gmail.com"}],"bugs":{"url":"https://breadstone.visualstudio.com/ziegel/_workitems/create/Bug"},"dist":{"shasum":"286acc2962d011a4cdcce9a7086dc1a750d43bb9","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.1.tgz","fileCount":55,"integrity":"sha512-gOLTV1gPU3eJkgh7B82zINEWoAxaBLOCh4r0lZ1n1HdQsQj1zB94uQcOxzUNULvvzBp6I2RZ/7z45QWh20eB5A==","signatures":[{"sig":"MEYCIQDVkDxk/cmDJ/nhCml9XM03TH5Ty32xIFgUBWeyjwaiBwIhAMBHZgKKCr4H+MbYb2Mx/juK2L75gv2Sycew9G8P8nER","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":215563},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"6e85e7a52b57c3f29013f4fd6383076cd22dc9a0","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","actor":{"name":"ruederennes","type":"user","email":"realsancezz@gmail.com"},"email":"realsancezz@gmail.com"},"commonjs":"./Index.js","repository":{"url":"https://breadstone.visualstudio.com/ziegel/_git/ziegel","type":"git"},"_npmVersion":"11.3.0","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"24.0.1","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.1_1750993757515_0.8245133857040452","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.2","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.2","maintainers":[{"name":"ruederennes","email":"realsancezz@gmail.com"}],"bugs":{"url":"https://breadstone.visualstudio.com/ziegel/_workitems/create/Bug"},"dist":{"shasum":"3b75f9e0bbf09d05d41d9715292e59fd47ddf85a","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.2.tgz","fileCount":56,"integrity":"sha512-DCWWqZQuOVw31+PcSL/IBDKVcj63zDECWC2YngLfsoMtMwD75ssvhFWr9ms5UyjCfpDFKlRuekTt08vq4/f87Q==","signatures":[{"sig":"MEUCIQCLdEvMnP+iJEsbi826xTPaPlG5TWdQkWO8TICvAGZUcgIgZ1P0c/9aAWxqK1dAb2Aba3sGgNyo+vE8LMy0hd3yKBc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":216026},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"810d476703d4a1544150277fa8510b8110622415","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","actor":{"name":"ruederennes","type":"user","email":"realsancezz@gmail.com"},"email":"realsancezz@gmail.com"},"commonjs":"./Index.js","repository":{"url":"https://breadstone.visualstudio.com/ziegel/_git/ziegel","type":"git"},"_npmVersion":"11.3.0","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"24.0.1","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.2_1750994537091_0.341774747338377","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.3","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.3","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"homepage":"https://github.com/RueDeRennes/ziegel#readme","bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dist":{"shasum":"461204bd83fa543acbde0f61b861da31c914175d","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.3.tgz","fileCount":52,"integrity":"sha512-05ONEvNnZ90vJ0Ig5T8DKiQc0t2J+Yt8vemErnvVEp+FlNcWKF/Hs5MOTi1+hSHWWtQFzWd5fZVxwv16auhLdw==","signatures":[{"sig":"MEUCIQCJ42hjM0hsprqWJDtux+9HRaW01qpf+pPsgGra00BaFgIgUkwnawsoy+3QJdNcYw09NxrDVudNSHApBBN6EAUL7SI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67255},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"b4d03ca0908154138403f2a27ca8efb54bee6e80","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","actor":{"name":"ruederennes","type":"user","email":"npm@breadstone.de"},"email":"npm@breadstone.de"},"commonjs":"./Index.js","repository":{"url":"git+https://github.com/RueDeRennes/ziegel.git","type":"git"},"_npmVersion":"10.9.2","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"22.17.0","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.3"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.3_1751575605988_0.2568205450169101","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.4","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.4","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"homepage":"https://github.com/RueDeRennes/ziegel#readme","bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dist":{"shasum":"d7dd9a3d6226c2e68b62ad39313ea32e6d9f8c51","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.4.tgz","fileCount":52,"integrity":"sha512-C3W6vTyHwU85+xTvWk/qbpBmzkZfKr6DA3GKIXh40pieWr8nBa8Sp1XJ9NcI5f8x1ceHbZCJ3Mz2PIZbVJTq6Q==","signatures":[{"sig":"MEYCIQDJYgIoa2zY2TN5aHaqdSkgaYMA3JgMGV9Tyid+xROzaQIhAJRjxVMGIrw3jNA5YI0WL8XFC/uDloDDsmg5r90QeMBh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":67255},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"87efb239ae0aa6121dc170cd110bc9be7bb0c622","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","actor":{"name":"ruederennes","type":"user","email":"npm@breadstone.de"},"email":"npm@breadstone.de"},"commonjs":"./Index.js","repository":{"url":"git+https://github.com/RueDeRennes/ziegel.git","type":"git"},"_npmVersion":"10.9.2","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"22.17.0","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.4"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.4_1751576131881_0.7443363679216677","host":"s3://npm-registry-packages-npm-production"}},"0.0.5":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.5","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.5","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"homepage":"https://github.com/RueDeRennes/ziegel#readme","bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dist":{"shasum":"5ba5789a1a266ab5932e13bf94b2ac498ce0aba3","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.5.tgz","fileCount":52,"integrity":"sha512-Qf+Ai1NFz3FFH8F3rTH6a3/3Jt09Y+oaugNYTJYtFgYUfD8kvEMePbVgO4wudt40bwRQRBHg1RMfRcrMuA32qg==","signatures":[{"sig":"MEQCIFFZFdGu8CegF/jx/i0pQB5zhgshbNR+7CzjBPtcoH+3AiBH0SQNAenKBu9DUSHZygAs9wqeUicDUNvbz/IQtE59Tw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":70998},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"7eb0efd9f6fa2d25da83ba6a3bd737a0da028bf7","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","actor":{"name":"ruederennes","type":"user","email":"npm@breadstone.de"},"email":"npm@breadstone.de"},"commonjs":"./Index.js","repository":{"url":"git+https://github.com/RueDeRennes/ziegel.git","type":"git"},"_npmVersion":"9.8.1","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"22.16.0","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.5"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.5_1751699306217_0.06496760318236272","host":"s3://npm-registry-packages-npm-production"}},"0.0.6":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.6","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.6","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"homepage":"https://github.com/RueDeRennes/ziegel#readme","bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dist":{"shasum":"d1408f393bccf7f0f3048a083ba9231e1e162923","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.6.tgz","fileCount":52,"integrity":"sha512-7/E/CHhM0YXIF7wC91qr1GjBjhoUD8IJd2JR3y+DBa767RKoktXH2VyfzPKD+HM8A63JEHVvamEcwduFvDiQgw==","signatures":[{"sig":"MEYCIQD2xIiri9Q2MUuSldTQkNkoV8QOI5nl+H8yKlvP9Sg3aAIhAKpUsyo3/mxiolar2JAU7Vu5h23TrXCgfmpLns7R746j","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75511},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"2513477b6a87dede7a429076b048197086e267b2","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","email":"npm@breadstone.de"},"commonjs":"./Index.js","repository":{"url":"git+https://github.com/RueDeRennes/ziegel.git","type":"git"},"_npmVersion":"11.4.2","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"24.4.1","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.6"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.6_1754467877853_0.2127279553449033","host":"s3://npm-registry-packages-npm-production"}},"0.0.7":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.7","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.7","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"homepage":"https://github.com/RueDeRennes/ziegel#readme","bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dist":{"shasum":"470f322c83410c3bd15ad5c8f536bb7a25e6d626","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.7.tgz","fileCount":52,"integrity":"sha512-D1igHO1N/4XB/UMUXz3UcotHDcEEHD8D+BpTCV17FVLcPnOeuOvREPAP+jU82Js8bNMTV98h+tGHAZ8j1Qr1ig==","signatures":[{"sig":"MEQCIFzFyno1sOvhfx8kdmZ9YQyGK+9or35q1rzPEmrmCo5yAiBLmjN65gyRc+1jeME/eYdBYXUU2+bF4LXGp0o7RPYl1g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":75511},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"7647e351d85d9dfbae9e9e9d84095559a75822d3","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","email":"npm@breadstone.de"},"commonjs":"./Index.js","repository":{"url":"git+https://github.com/RueDeRennes/ziegel.git","type":"git"},"_npmVersion":"11.4.2","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"24.4.1","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.7"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.7_1754468280500_0.16833159866492164","host":"s3://npm-registry-packages-npm-production"}},"0.0.8":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.8","author":{"url":"https://www.breadstone.de","name":"andre.wehlert","email":"awehlert@breadstone.de"},"license":"MIT","_id":"@breadstone/ziegel-platform-transaction@0.0.8","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"homepage":"https://github.com/RueDeRennes/ziegel#readme","bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dist":{"shasum":"67a0e4fa01dc53de45abad284bcac843aadd5720","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.8.tgz","fileCount":52,"integrity":"sha512-itVrtz3OFLebMyd/B51uZHGEsmtPo8kktP838zM9WXczXlYPmnfEBejzg5tZ2ndIIZwvSDPwoXF5KASeSvSBzA==","signatures":[{"sig":"MEYCIQCCf1SWFDVdheE7k/r/ZGJdt5UiOohoYkIiHayWnxwlQQIhAOj6MapEgzWlBSnBsKW/b8AqrRME2iYgE7BHk3vNgj1a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":74251},"main":"./Index.js","types":"./Index.d.ts","module":"./Index.js","gitHead":"e3ad0a5eb92747c06f8642ef6b1b2e012ef6cb77","typings":"./Index.d.ts","_npmUser":{"name":"ruederennes","email":"npm@breadstone.de"},"commonjs":"./Index.js","repository":{"url":"git+https://github.com/RueDeRennes/ziegel.git","type":"git"},"_npmVersion":"11.4.2","description":"Transaction to accumulate changes without immediately affecting the underlying data","directories":{},"_nodeVersion":"24.4.1","dependencies":{"rxjs":"^7.8.2","tslib":"^2.8.1","@breadstone/ziegel-core":"0.0.8"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ziegel-platform-transaction_0.0.8_1754745310297_0.7788468970018685","host":"s3://npm-registry-packages-npm-production"}},"0.0.9":{"name":"@breadstone/ziegel-platform-transaction","version":"0.0.9","description":"Transaction to accumulate changes without immediately affecting the underlying data","license":"MIT","author":{"name":"andre.wehlert","email":"awehlert@breadstone.de","url":"https://www.breadstone.de"},"main":"./Index.js","module":"./Index.js","commonjs":"./Index.js","typings":"./Index.d.ts","types":"./Index.d.ts","repository":{"type":"git","url":"git+https://github.com/RueDeRennes/ziegel.git"},"bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"dependencies":{"@breadstone/ziegel-core":"0.0.9","rxjs":"^7.8.2","tslib":"^2.8.1"},"_id":"@breadstone/ziegel-platform-transaction@0.0.9","gitHead":"efc417cb60db843da253c8b83aa7ea54fe94ed5f","homepage":"https://github.com/RueDeRennes/ziegel#readme","_nodeVersion":"24.4.1","_npmVersion":"11.4.2","dist":{"integrity":"sha512-+1y9EhhQAs5UcncQiNrx2Zzmnje1QJqd+kO54v2E2sTsgLlUwS1m5ki6WgCa1fpHTSlhkoZu+He9E95/lZ/H/g==","shasum":"a65187de5a5affdb540fb02898c307d6ba2e929d","tarball":"https://registry.npmjs.org/@breadstone/ziegel-platform-transaction/-/ziegel-platform-transaction-0.0.9.tgz","fileCount":52,"unpackedSize":74251,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCwU9Y8+Bedh8PdGVzNivqGcC8BDfQgLRcySFsSxWLq+AIgAsff0CyegB28o8AIjCSUV0rkGZIRsnUvhu3TFMQwhwY="}]},"_npmUser":{"name":"ruederennes","email":"npm@breadstone.de"},"directories":{},"maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ziegel-platform-transaction_0.0.9_1756450329465_0.4613228136024077"},"_hasShrinkwrap":false}},"time":{"created":"2025-06-27T03:09:17.424Z","modified":"2025-08-29T06:52:09.821Z","0.0.1":"2025-06-27T03:09:17.714Z","0.0.2":"2025-06-27T03:22:17.249Z","0.0.3":"2025-07-03T20:46:46.180Z","0.0.4":"2025-07-03T20:55:32.071Z","0.0.5":"2025-07-05T07:08:26.400Z","0.0.6":"2025-08-06T08:11:18.049Z","0.0.7":"2025-08-06T08:18:00.695Z","0.0.8":"2025-08-09T13:15:10.503Z","0.0.9":"2025-08-29T06:52:09.652Z"},"bugs":{"url":"https://github.com/RueDeRennes/ziegel/issues"},"author":{"name":"andre.wehlert","email":"awehlert@breadstone.de","url":"https://www.breadstone.de"},"license":"MIT","homepage":"https://github.com/RueDeRennes/ziegel#readme","repository":{"type":"git","url":"git+https://github.com/RueDeRennes/ziegel.git"},"description":"Transaction to accumulate changes without immediately affecting the underlying data","maintainers":[{"name":"ruederennes","email":"npm@breadstone.de"}],"readme":"# @breadstone/ziegel-platform-transaction\r\n\r\n[![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](https://choosealicense.com/licenses/mit/)\r\n[![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-blue.svg)](https://www.typescriptlang.org/)\r\n[![npm](https://img.shields.io/badge/npm-@breadstone/ziegel--platform--transaction-red.svg)](https://www.npmjs.com/package/@breadstone/ziegel-platform-transaction)\r\n\r\nEnterprise transaction management for the ziegel platform. Provides distributed transactions, compensation patterns, and transactional workflows for enterprise applications.\r\n\r\n> **Transaction Management**: Enterprise transaction patterns with distributed transactions, compensation, and workflow coordination.\r\n\r\n## 🚀 Overview\r\n\r\n`@breadstone/ziegel-platform-transaction` provides:\r\n- **Distributed Transactions**: ACID transactions across multiple resources\r\n- **Compensation Patterns**: Saga pattern implementation for long-running transactions\r\n- **Transaction Coordination**: Two-phase commit and transaction orchestration\r\n- **Isolation Levels**: Configurable transaction isolation levels\r\n- **Deadlock Detection**: Automatic deadlock detection and resolution\r\n- **Transaction Logging**: Comprehensive transaction audit trails\r\n\r\n## 📦 Installation\r\n\r\n```bash\r\nnpm install @breadstone/ziegel-platform-transaction\r\n# or\r\nyarn add @breadstone/ziegel-platform-transaction\r\n```\r\n\r\n## 🧩 Features & Usage Examples\r\n\r\n### Basic Transactions\r\n\r\n```typescript\r\nimport { TransactionManager, Transactional } from '@breadstone/ziegel-platform-transaction';\r\n\r\nclass UserService {\r\n  @Transactional()\r\n  async createUser(userData: CreateUserRequest) {\r\n    // All operations in this method run in a transaction\r\n    const user = await this.userRepository.create(userData);\r\n    await this.auditService.logUserCreation(user.id);\r\n    return user;\r\n  }\r\n}\r\n```\r\n\r\n### Distributed Transactions\r\n\r\n```typescript\r\nimport { DistributedTransactionManager, TransactionScope } from '@breadstone/ziegel-platform-transaction';\r\n\r\nconst txManager = new DistributedTransactionManager();\r\n\r\nawait txManager.execute(async (scope: TransactionScope) => {\r\n  await scope.enlist(databaseA);\r\n  await scope.enlist(databaseB);\r\n  \r\n  await databaseA.updateAccount(accountId, -amount);\r\n  await databaseB.updateAccount(targetAccountId, amount);\r\n});\r\n```\r\n\r\n### Saga Pattern (Compensation)\r\n\r\n```typescript\r\nimport { SagaOrchestrator, SagaStep } from '@breadstone/ziegel-platform-transaction';\r\n\r\nclass OrderSaga extends SagaOrchestrator {\r\n  async execute(order: Order) {\r\n    await this.addStep(new SagaStep(\r\n      () => this.reserveInventory(order),\r\n      () => this.releaseInventory(order)\r\n    ));\r\n    \r\n    await this.addStep(new SagaStep(\r\n      () => this.processPayment(order),\r\n      () => this.refundPayment(order)\r\n    ));\r\n    \r\n    await this.addStep(new SagaStep(\r\n      () => this.shipOrder(order),\r\n      () => this.cancelShipment(order)\r\n    ));\r\n  }\r\n}\r\n```\r\n\r\n### Transaction Isolation\r\n\r\n```typescript\r\nimport { IsolationLevel, TransactionOptions } from '@breadstone/ziegel-platform-transaction';\r\n\r\nconst options: TransactionOptions = {\r\n  isolationLevel: IsolationLevel.ReadCommitted,\r\n  timeout: 30000,\r\n  readOnly: false\r\n};\r\n\r\nawait transactionManager.executeWithOptions(options, async () => {\r\n  // Transaction logic with specific isolation level\r\n});\r\n```\r\n\r\n## 📚 Package import points\r\n\r\n```typescript\r\nimport {\r\n    // Core Transaction Management\r\n    TransactionManager,\r\n    DistributedTransactionManager,\r\n    Transactional,\r\n    \r\n    // Saga Pattern\r\n    SagaOrchestrator,\r\n    SagaStep,\r\n    \r\n    // Configuration\r\n    TransactionOptions,\r\n    IsolationLevel,\r\n    TransactionScope,\r\n    \r\n    // Utilities\r\n    TransactionContext,\r\n    CompensationAction\r\n} from '@breadstone/ziegel-platform-transaction';\r\n```\r\n\r\n## 📚 API Documentation\r\n\r\nFor detailed API documentation, visit: [API Docs](./../../.docs/api/ziegel-platform-transaction/index.md)\r\n\r\n## Related Packages\r\n\r\n- **@breadstone/ziegel-platform**: Core platform services\r\n- **@breadstone/ziegel-data**: Data access and repository patterns\r\n- **@breadstone/ziegel-core**: Foundation utilities\r\n\r\n## License\r\n\r\nMIT\r\n\r\n## Issues\r\n\r\nPlease report bugs and feature requests in the [Issue Tracker](https://github.com/RueDeRennes/ziegel/issues)\r\n\r\n---\r\n\r\n*Part of the [ziegel Enterprise TypeScript Framework](../../README.md)*","readmeFilename":"README.md"}