@firela/api-types 0.0.0-canary.da5984a1 → 0.0.0-canary.da8dfd93

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/index.js CHANGED
@@ -484,7 +484,7 @@ var BeanAccountsService = class {
484
484
  * @param data.type Filter by account type
485
485
  * @param data.status Filter by status
486
486
  * @param data.isCustom Filter by custom (user-created) accounts only
487
- * @param data.search Search term for path or i18nKey
487
+ * @param data.search Search term for account path
488
488
  * @param data.limit Maximum number of results
489
489
  * @param data.offset Number of results to skip
490
490
  * @returns AccountListResponseDto Accounts retrieved successfully
@@ -556,7 +556,7 @@ var BeanAccountsService = class {
556
556
  }
557
557
  /**
558
558
  * Delete account
559
- * Deletes an account (only if no transactions)
559
+ * Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
560
560
  * @param data The data for the request.
561
561
  * @param data.id Account UUID
562
562
  * @param data.region Region code for tenant context
@@ -573,7 +573,7 @@ var BeanAccountsService = class {
573
573
  },
574
574
  errors: {
575
575
  404: "Account not found",
576
- 409: "Account has transactions and cannot be deleted"
576
+ 409: "Account has active transactions and cannot be deleted"
577
577
  }
578
578
  });
579
579
  }
@@ -629,6 +629,32 @@ var BeanAccountsService = class {
629
629
  }
630
630
  });
631
631
  }
632
+ /**
633
+ * Post an opening-balance transaction
634
+ * Posts a double-entry opening-balance transaction against Equity:Opening-Balances for an existing Assets/Liabilities account. At most one active opening balance per account.
635
+ * @param data The data for the request.
636
+ * @param data.id Account UUID
637
+ * @param data.region Region code for tenant context
638
+ * @param data.requestBody
639
+ * @returns OpeningBalanceResultDto Opening-balance transaction created
640
+ * @throws ApiError
641
+ */
642
+ static accountControllerAddOpeningBalance(data) {
643
+ return request(OpenAPI, {
644
+ method: "POST",
645
+ url: "/api/v1/{region}/bean/accounts/{id}/opening-balance",
646
+ path: {
647
+ id: data.id,
648
+ region: data.region
649
+ },
650
+ body: data.requestBody,
651
+ mediaType: "application/json",
652
+ errors: {
653
+ 404: "Account not found",
654
+ 409: "An opening balance already exists for this account"
655
+ }
656
+ });
657
+ }
632
658
  };
633
659
  var BeanTransactionsService = class {
634
660
  /**
@@ -670,6 +696,7 @@ var BeanTransactionsService = class {
670
696
  * @param data.status Filter by transaction status
671
697
  * @param data.search Search in narration and payee fields (max 200 chars)
672
698
  * @param data.accountId Filter by account ID (transactions with postings to this account)
699
+ * @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
673
700
  * @returns TransactionListResponseDto Transaction list
674
701
  * @throws ApiError
675
702
  */
@@ -687,7 +714,8 @@ var BeanTransactionsService = class {
687
714
  dateTo: data.dateTo,
688
715
  status: data.status,
689
716
  search: data.search,
690
- accountId: data.accountId
717
+ accountId: data.accountId,
718
+ category: data.category
691
719
  },
692
720
  errors: {
693
721
  400: "Validation failed",
@@ -720,6 +748,33 @@ var BeanTransactionsService = class {
720
748
  }
721
749
  });
722
750
  }
751
+ /**
752
+ * Correct (supersede) a transaction
753
+ * Atomically voids the original (SUPERSEDED) and creates a replacement through the full validation pipeline.
754
+ * @param data The data for the request.
755
+ * @param data.id Original transaction ID to correct
756
+ * @param data.region Region code for tenant context
757
+ * @param data.requestBody
758
+ * @returns TransactionDetailDto Corrected transaction created
759
+ * @throws ApiError
760
+ */
761
+ static transactionControllerCorrect(data) {
762
+ return request(OpenAPI, {
763
+ method: "POST",
764
+ url: "/api/v1/{region}/bean/transactions/{id}/correct",
765
+ path: {
766
+ id: data.id,
767
+ region: data.region
768
+ },
769
+ body: data.requestBody,
770
+ mediaType: "application/json",
771
+ errors: {
772
+ 404: "Original transaction not found",
773
+ 409: "Original no longer ACTIVE (concurrent modification)",
774
+ 422: "Pipeline validation failed (does not balance, invalid accounts)"
775
+ }
776
+ });
777
+ }
723
778
  /**
724
779
  * Suggest transaction tags
725
780
  * Returns distinct tags from the user ACTIVE transactions, sorted by usage, for autocomplete. Optional q performs a case-insensitive prefix match.
@@ -829,7 +884,7 @@ var BeanBalancesService = class {
829
884
  * Query account balance
830
885
  * Calculate account balance at a specific date for a single currency
831
886
  * @param data The data for the request.
832
- * @param data.account Account name (e.g., "Assets:Bank:Checking")
887
+ * @param data.account Account name (e.g., "Assets:Checking")
833
888
  * @param data.region Region code for tenant context
834
889
  * @param data.date Date to calculate balance at (ISO 8601 format)
835
890
  * @param data.currency Currency to query (e.g., "USD", "CNY")
@@ -1057,7 +1112,7 @@ var ProviderSyncService = class {
1057
1112
  *
1058
1113
  * @param data The data for the request.
1059
1114
  * @param data.providerName Provider name
1060
- * @param data.region Region code
1115
+ * @param data.region Region code for tenant context
1061
1116
  * @param data.requestBody
1062
1117
  * @returns ProviderSyncResponseDto Sync completed successfully
1063
1118
  * @throws ApiError
package/dist/index.mjs CHANGED
@@ -452,7 +452,7 @@ var BeanAccountsService = class {
452
452
  * @param data.type Filter by account type
453
453
  * @param data.status Filter by status
454
454
  * @param data.isCustom Filter by custom (user-created) accounts only
455
- * @param data.search Search term for path or i18nKey
455
+ * @param data.search Search term for account path
456
456
  * @param data.limit Maximum number of results
457
457
  * @param data.offset Number of results to skip
458
458
  * @returns AccountListResponseDto Accounts retrieved successfully
@@ -524,7 +524,7 @@ var BeanAccountsService = class {
524
524
  }
525
525
  /**
526
526
  * Delete account
527
- * Deletes an account (only if no transactions)
527
+ * Deletes an account (only if no active transactions; voided/superseded residual postings are cleaned up)
528
528
  * @param data The data for the request.
529
529
  * @param data.id Account UUID
530
530
  * @param data.region Region code for tenant context
@@ -541,7 +541,7 @@ var BeanAccountsService = class {
541
541
  },
542
542
  errors: {
543
543
  404: "Account not found",
544
- 409: "Account has transactions and cannot be deleted"
544
+ 409: "Account has active transactions and cannot be deleted"
545
545
  }
546
546
  });
547
547
  }
@@ -597,6 +597,32 @@ var BeanAccountsService = class {
597
597
  }
598
598
  });
599
599
  }
600
+ /**
601
+ * Post an opening-balance transaction
602
+ * Posts a double-entry opening-balance transaction against Equity:Opening-Balances for an existing Assets/Liabilities account. At most one active opening balance per account.
603
+ * @param data The data for the request.
604
+ * @param data.id Account UUID
605
+ * @param data.region Region code for tenant context
606
+ * @param data.requestBody
607
+ * @returns OpeningBalanceResultDto Opening-balance transaction created
608
+ * @throws ApiError
609
+ */
610
+ static accountControllerAddOpeningBalance(data) {
611
+ return request(OpenAPI, {
612
+ method: "POST",
613
+ url: "/api/v1/{region}/bean/accounts/{id}/opening-balance",
614
+ path: {
615
+ id: data.id,
616
+ region: data.region
617
+ },
618
+ body: data.requestBody,
619
+ mediaType: "application/json",
620
+ errors: {
621
+ 404: "Account not found",
622
+ 409: "An opening balance already exists for this account"
623
+ }
624
+ });
625
+ }
600
626
  };
601
627
  var BeanTransactionsService = class {
602
628
  /**
@@ -638,6 +664,7 @@ var BeanTransactionsService = class {
638
664
  * @param data.status Filter by transaction status
639
665
  * @param data.search Search in narration and payee fields (max 200 chars)
640
666
  * @param data.accountId Filter by account ID (transactions with postings to this account)
667
+ * @param data.category Filter by ADR-0075 functional category (Group segment); matches any posting to an Expenses/Income account whose derived Group segment equals this value
641
668
  * @returns TransactionListResponseDto Transaction list
642
669
  * @throws ApiError
643
670
  */
@@ -655,7 +682,8 @@ var BeanTransactionsService = class {
655
682
  dateTo: data.dateTo,
656
683
  status: data.status,
657
684
  search: data.search,
658
- accountId: data.accountId
685
+ accountId: data.accountId,
686
+ category: data.category
659
687
  },
660
688
  errors: {
661
689
  400: "Validation failed",
@@ -688,6 +716,33 @@ var BeanTransactionsService = class {
688
716
  }
689
717
  });
690
718
  }
719
+ /**
720
+ * Correct (supersede) a transaction
721
+ * Atomically voids the original (SUPERSEDED) and creates a replacement through the full validation pipeline.
722
+ * @param data The data for the request.
723
+ * @param data.id Original transaction ID to correct
724
+ * @param data.region Region code for tenant context
725
+ * @param data.requestBody
726
+ * @returns TransactionDetailDto Corrected transaction created
727
+ * @throws ApiError
728
+ */
729
+ static transactionControllerCorrect(data) {
730
+ return request(OpenAPI, {
731
+ method: "POST",
732
+ url: "/api/v1/{region}/bean/transactions/{id}/correct",
733
+ path: {
734
+ id: data.id,
735
+ region: data.region
736
+ },
737
+ body: data.requestBody,
738
+ mediaType: "application/json",
739
+ errors: {
740
+ 404: "Original transaction not found",
741
+ 409: "Original no longer ACTIVE (concurrent modification)",
742
+ 422: "Pipeline validation failed (does not balance, invalid accounts)"
743
+ }
744
+ });
745
+ }
691
746
  /**
692
747
  * Suggest transaction tags
693
748
  * Returns distinct tags from the user ACTIVE transactions, sorted by usage, for autocomplete. Optional q performs a case-insensitive prefix match.
@@ -797,7 +852,7 @@ var BeanBalancesService = class {
797
852
  * Query account balance
798
853
  * Calculate account balance at a specific date for a single currency
799
854
  * @param data The data for the request.
800
- * @param data.account Account name (e.g., "Assets:Bank:Checking")
855
+ * @param data.account Account name (e.g., "Assets:Checking")
801
856
  * @param data.region Region code for tenant context
802
857
  * @param data.date Date to calculate balance at (ISO 8601 format)
803
858
  * @param data.currency Currency to query (e.g., "USD", "CNY")
@@ -1025,7 +1080,7 @@ var ProviderSyncService = class {
1025
1080
  *
1026
1081
  * @param data The data for the request.
1027
1082
  * @param data.providerName Provider name
1028
- * @param data.region Region code
1083
+ * @param data.region Region code for tenant context
1029
1084
  * @param data.requestBody
1030
1085
  * @returns ProviderSyncResponseDto Sync completed successfully
1031
1086
  * @throws ApiError
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@firela/api-types",
3
- "version": "0.0.0-canary.da5984a1",
3
+ "version": "0.0.0-canary.da8dfd93",
4
4
  "description": "TypeScript types generated from IGN OpenAPI specification",
5
5
  "license": "MIT",
6
6
  "author": "FireLa Team",
@@ -24,8 +24,7 @@
24
24
  "src"
25
25
  ],
26
26
  "scripts": {
27
- "sync": "npx ts-node scripts/sync-spec.ts",
28
- "generate": "npm run sync && openapi-ts",
27
+ "generate": "openapi-ts",
29
28
  "build": "tsup src/index.ts --format cjs,esm --dts --clean",
30
29
  "lint": "spectral lint openapi.yaml",
31
30
  "prepublishOnly": "npm run generate && npm run build"