Skip to main content

Interface.IInvestService

Invest identity operations.

Properties

PropertyTypeDescription
create(data: { firstName: string; lastName: string; }) => Promise<{ account: { id: string; user: { email: string; id: string; name: string; }; }; createdAt: string; firstName: string; id: string; lastName: string; status: "WAITING_KYC" | "KYC_DONE" | "REJECTED_KYC"; updatedAt: string; }>Creates a new invest identity.
createOffer(data: { fund: string; identity: string; price: number; shares: number; type: "BUY" | "SELL"; }) => Promise<{ createdAt: string; currency: "EUR" | "USD"; expiresAt: Date; fund: { id: string; name: string; }; id: string; identity: { email: string; firstName: string; id: string; lastName: string; }; price: number; shares: number; status: "OPEN" | "DELETED" | "EXPIRED"; type: "BUY" | "SELL"; updatedAt: string; }>Creates a secondary market offer.
deleteOffer(id: string) => Promise<{ createdAt: string; currency: "EUR" | "USD"; expiresAt: Date; fund: { id: string; name: string; }; id: string; identity: { email: string; firstName: string; id: string; lastName: string; }; price: number; shares: number; status: "OPEN" | "DELETED" | "EXPIRED"; type: "BUY" | "SELL"; updatedAt: string; }>Deletes a secondary market offer.
getMe() => Promise< | { account: { id: string; user: { email: string; id: string; name: string; }; }; createdAt: string; firstName: string; id: string; lastName: string; status: "WAITING_KYC" | "KYC_DONE" | "REJECTED_KYC"; updatedAt: string; } | null>Returns the current user's invest identity, or null if not found.
getOffer(id: string) => Promise<{ createdAt: string; currency: "EUR" | "USD"; expiresAt: Date; fund: { id: string; name: string; }; id: string; identity: { email: string; firstName: string; id: string; lastName: string; }; price: number; shares: number; status: "OPEN" | "DELETED" | "EXPIRED"; type: "BUY" | "SELL"; updatedAt: string; }>Fetches a secondary market offer by ID.
listFunds(filters?: Record<string, string>) => Promise<{ data: { application: string; createdAt: string; currency: "EUR" | "USD"; description?: string | null; id: string; investors: number; lockupPeriod?: Date | null; minimumInvestment?: number | null; name: string; nav: number; p2pTransfer: boolean; secondaryMarket: boolean; secondaryMarketOfferDuration: number; shares: number; status: "DRAFT" | "ACTIVE" | "CLOSED"; updatedAt: string; }[]; limit: number; offset: number; total: number; }>Lists active investment funds for the current application.
listOffers(filters?: Record<string, string>, pagination?: { currentPage?: number; pageSize?: number; }) => Promise<{ data: { createdAt: string; currency: "EUR" | "USD"; expiresAt: Date; fund: { id: string; name: string; }; id: string; identity: { email: string; firstName: string; id: string; lastName: string; }; price: number; shares: number; status: "OPEN" | "DELETED" | "EXPIRED"; type: "BUY" | "SELL"; updatedAt: string; }[]; limit: number; offset: number; total: number; }>Lists secondary market offers.
updateOffer(id: string, data: { price?: number; shares?: number; }) => Promise<{ createdAt: string; currency: "EUR" | "USD"; expiresAt: Date; fund: { id: string; name: string; }; id: string; identity: { email: string; firstName: string; id: string; lastName: string; }; price: number; shares: number; status: "OPEN" | "DELETED" | "EXPIRED"; type: "BUY" | "SELL"; updatedAt: string; }>Updates a secondary market offer.