fix(exports): stabilize published types and compatibility with updated dependencies

This commit is contained in:
2026-04-16 19:41:55 +00:00
parent cb6b3db15a
commit 40ffc2b355
25 changed files with 4539 additions and 5354 deletions
+40 -22
View File
@@ -7,75 +7,93 @@ import type {
ITransactionData,
} from './skr.types.js';
const { SmartDataDbDoc, svDb, unI, index, searchable } = plugins.smartdata;
declare abstract class SmartDataDbDocBase {
public save(): Promise<void>;
public delete(): Promise<void>;
public static getInstance<T>(
this: new (...args: any[]) => T,
query: Record<string, any>,
): Promise<T | null>;
public static getInstances<T>(
this: new (...args: any[]) => T,
query: Record<string, any>,
): Promise<T[]>;
}
@plugins.smartdata.Collection(() => getDbSync())
export class Transaction extends SmartDataDbDoc<Transaction, Transaction> {
const SmartDataDbDoc = plugins.smartdata.SmartDataDbDoc as unknown as typeof SmartDataDbDocBase;
const Collection = plugins.smartdata.Collection as any;
const svDb = plugins.smartdata.svDb as any;
const unI = plugins.smartdata.unI as any;
const index = plugins.smartdata.index as any;
const searchable = plugins.smartdata.searchable as any;
@Collection(() => getDbSync())
export class Transaction extends SmartDataDbDoc {
@unI()
public id: string;
public id!: string;
@svDb()
@index()
public transactionNumber: string;
public transactionNumber!: string;
@svDb()
@index()
public date: Date;
public date!: Date;
@svDb()
@index()
public debitAccount: string;
public debitAccount!: string;
@svDb()
@index()
public creditAccount: string;
public creditAccount!: string;
@svDb()
public amount: number;
public amount!: number;
@svDb()
@searchable()
public description: string;
public description!: string;
@svDb()
@index()
public reference: string;
public reference!: string;
@svDb()
@index()
public skrType: TSKRType;
public skrType!: TSKRType;
@svDb()
public vatAmount: number;
public vatAmount!: number;
@svDb()
public costCenter: string;
public costCenter!: string;
@svDb()
@index()
public status: TTransactionStatus;
public status!: TTransactionStatus;
@svDb()
public reversalOf: string;
public reversalOf!: string;
@svDb()
public reversedBy: string;
public reversedBy!: string;
@svDb()
@index()
public period: string; // Format: YYYY-MM
public period!: string; // Format: YYYY-MM
@svDb()
public fiscalYear: number;
public fiscalYear!: number;
@svDb()
public createdAt: Date;
public createdAt!: Date;
@svDb()
public postedAt: Date;
public postedAt!: Date | null;
@svDb()
public createdBy: string;
public createdBy!: string;
constructor(data?: Partial<ITransactionData>) {
super();