Files
InvoiceShelf/resources/scripts-v2/api/index.ts
Darko Gjorgjijoski 991b716b33 Phase 1: TypeScript foundation in scripts-v2/
Create the complete TypeScript foundation for the Vue 3 migration
in a parallel scripts-v2/ directory. 72 files, 5430 lines, zero
any types, strict mode.

- types/ (21 files): Domain interfaces for all 17 entities derived
  from actual Laravel models and API resources. Enums for all
  statuses. Generic API response wrappers.
- api/ (29 files): Typed axios client with interceptors, endpoint
  constants from routes/api.php, 25 typed service classes covering
  every API endpoint.
- composables/ (14 files): Vue 3 composition functions for auth,
  notifications, dialogs, modals, pagination, filters, currency,
  dates, theme, sidebar, company context, and permissions.
- utils/ (5 files): Pure typed utilities for money formatting,
  date formatting (date-fns), localStorage, and error handling.
- config/ (3 files): Typed ability constants, app constants.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-04 05:00:00 +02:00

124 lines
2.5 KiB
TypeScript

export { client } from './client'
export { API } from './endpoints'
export {
authService,
bootstrapService,
invoiceService,
estimateService,
recurringInvoiceService,
customerService,
paymentService,
expenseService,
itemService,
companyService,
userService,
memberService,
settingService,
dashboardService,
reportService,
roleService,
taxTypeService,
customFieldService,
noteService,
exchangeRateService,
moduleService,
backupService,
mailService,
pdfService,
diskService,
} from './services'
// Re-export all service types
export type {
LoginPayload,
LoginResponse,
ForgotPasswordPayload,
ResetPasswordPayload,
RegisterWithInvitationPayload,
BootstrapResponse,
MenuItem,
CurrentCompanyResponse,
InvoiceListParams,
InvoiceListResponse,
SendInvoicePayload,
InvoiceStatusPayload,
InvoiceTemplatesResponse,
EstimateListParams,
EstimateListResponse,
SendEstimatePayload,
EstimateStatusPayload,
EstimateTemplatesResponse,
RecurringInvoiceListParams,
RecurringInvoiceListResponse,
FrequencyDateParams,
FrequencyDateResponse,
CustomerListParams,
CustomerListResponse,
CustomerStatsData,
PaymentListParams,
PaymentListResponse,
SendPaymentPayload,
CreatePaymentMethodPayload,
ExpenseListParams,
ExpenseListResponse,
CreateExpenseCategoryPayload,
ItemListParams,
ItemListResponse,
CreateItemPayload,
CreateUnitPayload,
UpdateCompanyPayload,
CompanySettingsPayload,
CreateCompanyPayload,
UpdateProfilePayload,
UserSettingsPayload,
MemberListParams,
MemberListResponse,
UpdateMemberPayload,
InviteMemberPayload,
DeleteMembersPayload,
ConfigResponse,
GlobalSettingsPayload,
DateFormat,
TimeFormat,
DashboardParams,
DashboardResponse,
ChartData,
ReportParams,
SalesReportResponse,
ProfitLossReportResponse,
ExpenseReportResponse,
TaxReportResponse,
CreateRolePayload,
AbilitiesResponse,
CreateTaxTypePayload,
CustomFieldListParams,
CreateCustomFieldPayload,
CreateNotePayload,
CreateExchangeRateProviderPayload,
BulkUpdatePayload,
ExchangeRateResponse,
ActiveProviderResponse,
Module,
ModuleInstallPayload,
ModuleCheckResponse,
Backup,
CreateBackupPayload,
DeleteBackupParams,
MailConfig,
MailConfigResponse,
MailDriver,
SmtpConfig,
MailgunConfig,
SesConfig,
TestMailPayload,
PdfConfig,
PdfConfigResponse,
PdfDriver,
DomPdfConfig,
GotenbergConfig,
Disk,
DiskDriversResponse,
CreateDiskPayload,
} from './services'