diff --git a/api/src/entities/Budget.ts b/api/src/entities/Budget.ts index c02da4c..bdc423d 100644 --- a/api/src/entities/Budget.ts +++ b/api/src/entities/Budget.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { Category } from './Category.js'; import { User } from './User.js'; import { decimalTransformer } from '../utils/decimal.js'; @@ -30,8 +31,8 @@ export class Budget { updatedAt!: Date; @ManyToOne(() => User, { onDelete: 'CASCADE' }) - user!: User; + user!: Relation; @ManyToOne(() => Category, { eager: true, nullable: true, onDelete: 'SET NULL' }) - category!: Category | null; + category!: Relation | null; } diff --git a/api/src/entities/Category.ts b/api/src/entities/Category.ts index 52d3834..affb05c 100644 --- a/api/src/entities/Category.ts +++ b/api/src/entities/Category.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, ManyToOne, OneToMany, PrimaryGeneratedColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { Expense } from './Expense.js'; import { User } from './User.js'; @@ -20,8 +21,8 @@ export class Category { createdAt!: Date; @ManyToOne(() => User, (user) => user.categories, { nullable: true, onDelete: 'CASCADE' }) - user!: User | null; + user!: Relation | null; @OneToMany(() => Expense, (expense) => expense.category) - expenses!: Expense[]; + expenses!: Relation; } diff --git a/api/src/entities/Expense.ts b/api/src/entities/Expense.ts index 99eb85a..d1af108 100644 --- a/api/src/entities/Expense.ts +++ b/api/src/entities/Expense.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, ManyToOne, OneToMany, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { Category } from './Category.js'; import { Proof } from './Proof.js'; import { User } from './User.js'; @@ -61,11 +62,11 @@ export class Expense { updatedAt!: Date; @ManyToOne(() => User, (user) => user.expenses, { onDelete: 'CASCADE' }) - user!: User; + user!: Relation; @ManyToOne(() => Category, (category) => category.expenses, { eager: true, onDelete: 'RESTRICT' }) - category!: Category; + category!: Relation; @OneToMany(() => Proof, (proof) => proof.expense, { eager: true, cascade: true }) - proofs!: Proof[]; + proofs!: Relation; } diff --git a/api/src/entities/Merchant.ts b/api/src/entities/Merchant.ts index 472cc35..47963f3 100644 --- a/api/src/entities/Merchant.ts +++ b/api/src/entities/Merchant.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { User } from './User.js'; @Entity('merchants') @@ -25,5 +26,5 @@ export class Merchant { updatedAt!: Date; @ManyToOne(() => User, { onDelete: 'CASCADE' }) - user!: User; + user!: Relation; } diff --git a/api/src/entities/Proof.ts b/api/src/entities/Proof.ts index 1d9b3de..daa8366 100644 --- a/api/src/entities/Proof.ts +++ b/api/src/entities/Proof.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, ManyToOne, PrimaryGeneratedColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { Expense } from './Expense.js'; export type ProofType = 'RECEIPT' | 'INVOICE' | 'NOTE' | 'BANK_STATEMENT' | 'OTHER'; @@ -33,5 +34,5 @@ export class Proof { createdAt!: Date; @ManyToOne(() => Expense, (expense) => expense.proofs, { onDelete: 'CASCADE' }) - expense!: Expense; + expense!: Relation; } diff --git a/api/src/entities/RecurringExpense.ts b/api/src/entities/RecurringExpense.ts index 92c6032..e5e5567 100644 --- a/api/src/entities/RecurringExpense.ts +++ b/api/src/entities/RecurringExpense.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, ManyToOne, PrimaryGeneratedColumn, UpdateDateColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { Category } from './Category.js'; import { User } from './User.js'; import { decimalTransformer } from '../utils/decimal.js'; @@ -71,8 +72,8 @@ export class RecurringExpense { updatedAt!: Date; @ManyToOne(() => User, { onDelete: 'CASCADE' }) - user!: User; + user!: Relation; @ManyToOne(() => Category, { eager: true, onDelete: 'RESTRICT' }) - category!: Category; + category!: Relation; } diff --git a/api/src/entities/User.ts b/api/src/entities/User.ts index 0ab4d95..ff1ffba 100644 --- a/api/src/entities/User.ts +++ b/api/src/entities/User.ts @@ -1,4 +1,5 @@ import { Column, CreateDateColumn, Entity, OneToMany, PrimaryGeneratedColumn } from 'typeorm'; +import type { Relation } from 'typeorm'; import { Category } from './Category.js'; import { Expense } from './Expense.js'; @@ -50,8 +51,8 @@ export class User { createdAt!: Date; @OneToMany(() => Category, (category) => category.user) - categories!: Category[]; + categories!: Relation; @OneToMany(() => Expense, (expense) => expense.user) - expenses!: Expense[]; + expenses!: Relation; }