UNPKG

@alisdigital/types-library

Version:

TypeScript type definitions for Papilet ecosystem with session soft delete and event management features

195 lines (194 loc) 4.57 kB
import { IListResponse } from "./base.response"; import { IMetadata } from "./dashboard.response"; import { IUser } from "./user.response"; export interface IProperty { id: string; title: string; address: string; city: string; district: string; neighborhood: string; isRented: boolean; propertyNumber: string; serviceFeeRate: string; buildingManagerId: string; consultantId: string; metadata: IMetadata; isActive: boolean; createdAt: string; updatedAt: string; image: IMedia; Institution: Institution; User: IUser; amount: number; } export interface Institution { id: string; title: string; description: string; type: string; iban: null | string; gsmNumber: null | string; email: null | string; address: null | string; city: string; district: string; externalUrl: null | string; isActive: boolean; createdAt: string; updatedAt: string; } export interface IPropertiesResponse extends IListResponse { properties: IProperty[]; } export interface IPropertyResponse extends IProperty { } interface IPropertyExpense { id: string; propertyId: string; propertyTenantId: string; institutionId: null; paytoTransfer: null; typeId: string; amount: string; description: string; paidAt: string; receiptImageId: string; isActive: boolean; createdAt: string; updatedAt: string; receiptImage: ReceiptImage; } export interface ReceiptImage { id: string; name: string; type: string; size: number; url: string; createdAt: string; updatedAt: string; } export interface IPropertyExpensesResponse extends Array<IPropertyExpense> { } export interface IPropertyMediaResponse extends Array<IPropertyMediaData> { } export interface IPropertyMediaData { id: string; propertyId: string; mediaId: string; createdAt: string; updatedAt: string; media: IMedia; } export interface IPropertyMedia { id: string; name: string; type: string; size: number; url: string; createdAt: string; updatedAt: string; } export interface IPropertyOwnerResponse extends Array<IPropertyOwner> { } export interface IPropertyOwner { id: string; propertyId: string; ownerId: string; sharePercentage: string; createdAt: string; updatedAt: string; User: IUser; } export interface IPropertyTenantResponse extends Array<IPropertyTenant> { } export interface IPropertyTenant { id: string; propertyId: string; tenantId: string; startDate: string; endDate: string; rentPeriod: number; paidDay: number; rentPrice: string; isCurrent: boolean; createdAt: string; updatedAt: string; User: IUser; contracts: IPropertyTenantContract[]; amount: number; } export interface IPropertyTenantContract { id: string; propertyTenantId: string; paidDate: string; isPaid: boolean; amount: string; paidAmount: string; isActive: boolean; createdAt: string; updatedAt: string; } export interface IPropertyContractsResponse extends Array<IPropertyContract> { } interface IPropertyContract { id: string; propertyTenantId: string; mediaId: string; type: string; isApproved: boolean; createdAt: string; updatedAt: string; media: IMedia; } export interface IMedia { id: string; name: string; type: string; size: number; url: string; createdAt: string; updatedAt: string; } export interface IPropertyTenantArchiveResponse { expenses: IPropertyTenantExpense[]; contracts: IPropertyTenantArchiveContract[]; } export interface IPropertyTenantArchiveContract { id: string; propertyTenantId: string; mediaId: string; type: string; isApproved: boolean; createdAt: string; updatedAt: string; media: ReceiptImage; } export interface IPropertyTenantExpense { id: string; propertyId: string; propertyTenantId: string; institutionId: null; paytoTransfer: boolean | null; typeId: string; amount: string; description: string; paidAt: string; receiptImageId: null | string; isActive: boolean; createdAt: string; updatedAt: string; receiptImage: ReceiptImage | null; } export interface IPropertyNoteResponse extends Array<IPropertyNote> { } export interface IPropertyNote { id: string; propertyId: string; note: string; userId: string; createdAt: string; updatedAt: string; user: IUser; } export {};