UNPKG

pancake-client-sdk

Version:
85 lines (84 loc) 2.56 kB
import { FinancialTransaction, CreateTransactionRequest, TransactionCategory, CreateCategoryRequest, AdvertisingExpense, CreateAdvertisingExpenseRequest, TransactionListParams, FinancialReport, ReportParams } from '../types/finance'; import { BaseResource } from './base'; export declare class FinanceResource extends BaseResource { /** * Get list of financial transactions */ listTransactions(params?: TransactionListParams): Promise<{ data: FinancialTransaction[]; }>; /** * Get transaction by ID */ getTransactionById(transactionId: string): Promise<FinancialTransaction>; /** * Create new transaction */ createTransaction(data: CreateTransactionRequest): Promise<FinancialTransaction>; /** * Update transaction */ updateTransaction(transactionId: string, data: Partial<FinancialTransaction>): Promise<FinancialTransaction>; /** * Delete transaction */ deleteTransaction(transactionId: string): Promise<void>; /** * Get list of transaction categories */ listCategories(type?: 'receipt' | 'expense'): Promise<{ data: TransactionCategory[]; }>; /** * Create new category */ createCategory(data: CreateCategoryRequest): Promise<TransactionCategory>; /** * Update category */ updateCategory(categoryId: number, data: Partial<TransactionCategory>): Promise<TransactionCategory>; /** * Delete category */ deleteCategory(categoryId: number): Promise<void>; /** * Create advertising expense */ createAdvertisingExpense(data: CreateAdvertisingExpenseRequest): Promise<AdvertisingExpense>; /** * List advertising expenses */ listAdvertisingExpenses(params?: { page_size?: number; page_number?: number; platform?: string; from_date?: string; to_date?: string; }): Promise<{ data: AdvertisingExpense[]; }>; /** * Get financial report */ getFinancialReport(params: ReportParams): Promise<FinancialReport>; /** * Get daily summary report */ getDailySummary(params: { from_date: string; to_date: string; }): Promise<{ date: string; receipts: number; expenses: number; net: number; }[]>; /** * Get category breakdown report */ getCategoryBreakdown(params: ReportParams): Promise<{ category_id: number; category_name: string; total_amount: number; }[]>; }