/// import { PublicKey, TokenAmount } from "@solana/web3.js"; import { Receivable as IDLReceivable, ReceivableAmountsRepaid as IDLReceivableAmountsRepaid, ReceivableInfo } from "../idl/idl.types"; import { Base } from "../rpc/Base"; import { CredixClient, SolanaContext } from "../rpc/CredixClient"; import { Fraction } from "./Fraction"; import { Market } from "./Market"; import { DaycountConvention } from "./RepaymentSchedule"; export type ReceivableAmountsRepaid = { originationFee: TokenAmount; discount: TokenAmount; advancedAmount: TokenAmount; toSeller: TokenAmount; }; export declare const toTrancheAmountsRepaid: (idlAmountsRepaid: IDLReceivableAmountsRepaid) => ReceivableAmountsRepaid; export declare class Receivable extends Base { address: PublicKey; market?: Market; constructor(address: PublicKey, receivable: IDLReceivable, client: CredixClient, solanaContext: SolanaContext, market: Market | null); reload(): Promise; get isFunded(): boolean; get totalRepaid(): TokenAmount; get fundedTs(): number | null; get faceValue(): TokenAmount; get advanceRate(): Fraction; get discountRate(): Fraction; get expectedDueTs(): number; get daycountConvention(): DaycountConvention; get baseValue(): TokenAmount; discountAmount(date: Date): TokenAmount; get expectedDiscountAmount(): TokenAmount; get advancedAmount(): TokenAmount; get receivableInfo(): ReceivableInfo; get sellerTokenAccount(): PublicKey; get baseMintPk(): PublicKey; get repaidAmounts(): ReceivableAmountsRepaid; get collectionTokenAccount(): PublicKey; static generatePDA(duplicataIdentifier: string, programId: PublicKey): [PublicKey, number]; static splitDuplicataIdentifier(duplicataIdentifier: string): [string, string]; private repayReceivableBuilder; repayIx(owner?: PublicKey): Promise; repay(): Promise; } //# sourceMappingURL=Receivable.d.ts.map