/** * Digital Shopkeeper API Contracts v2.0 * Full spec from backend-api-design.md — Zod schemas and ts-rest routes. */ import { initContract } from '@ts-rest/core'; export * from './schemas/common.schemas'; export * from './schemas/shopkeeper.schemas'; export * from './schemas/shopkeeper-sync.schemas'; export * from './schemas/shopkeeper-whatsapp.schemas'; export * from './schemas/shopkeeper-backup.schemas'; export * from './schemas/shopkeeper-billing.schemas'; export * from './schemas/shopkeeper-installer.schemas'; export * from './schemas/shopkeeper-wallet.schemas'; export * from './schemas/shopkeeper-telephony.schemas'; export * from './schemas/shopkeeper-vision.schemas'; export * from './schemas/shopkeeper-insights.schemas'; export * from './routes/shopkeeper-device.routes'; export * from './routes/shopkeeper.routes'; export * from './routes/shopkeeper-sync.routes'; export * from './routes/shopkeeper-backup.routes'; export * from './routes/shopkeeper-whatsapp.routes'; export * from './routes/shopkeeper-billing.routes'; export * from './routes/shopkeeper-reports.routes'; export * from './routes/shopkeeper-installer.routes'; export * from './routes/shopkeeper-barcodes.routes'; export * from './routes/shopkeeper-wallet.routes'; export * from './routes/shopkeeper-analytics.routes'; export * from './routes/shopkeeper-telephony.routes'; export * from './routes/shopkeeper-vision.routes'; export * from './routes/shopkeeper-insights.routes'; export * from './routes/shopkeeper-audit.routes'; export * from './routes/shopkeeper-voice.routes'; export * from './routes/shopkeeper-mobile-llm.routes'; export * from './routes/shopkeeper-reservations.routes'; export * from './routes/shopkeeper-intelligence.routes'; export * from './routes/shopkeeper-settings.routes'; export * from './schemas/shopkeeper-settings.schemas'; export * from './schemas/storefront.schemas'; export * from './routes/storefront.routes'; export * from './schemas/shopkeeper-payments.schemas'; export * from './routes/shopkeeper-payments.routes'; export * from './schemas/shopkeeper-group-buy.schemas'; export * from './routes/shopkeeper-group-buy.routes'; export * from './schemas/platform-market-intelligence.schemas'; export * from './routes/platform-market-intelligence.routes'; import { shopkeeperDeviceContract } from './routes/shopkeeper-device.routes'; import { shopkeeperContract } from './routes/shopkeeper.routes'; import { shopkeeperSyncContract } from './routes/shopkeeper-sync.routes'; import { shopkeeperBackupContract } from './routes/shopkeeper-backup.routes'; import { shopkeeperWhatsappContract } from './routes/shopkeeper-whatsapp.routes'; import { shopkeeperBillingContract } from './routes/shopkeeper-billing.routes'; import { shopkeeperReportsContract } from './routes/shopkeeper-reports.routes'; import { shopkeeperInstallerContract } from './routes/shopkeeper-installer.routes'; import { shopkeeperBarcodesContract } from './routes/shopkeeper-barcodes.routes'; import { shopkeeperWalletContract } from './routes/shopkeeper-wallet.routes'; import { shopkeeperAnalyticsContract } from './routes/shopkeeper-analytics.routes'; import { shopkeeperTelephonyContract } from './routes/shopkeeper-telephony.routes'; import { shopkeeperVisionContract } from './routes/shopkeeper-vision.routes'; import { shopkeeperInsightsContract } from './routes/shopkeeper-insights.routes'; import { shopkeeperAuditContract } from './routes/shopkeeper-audit.routes'; import { shopkeeperVoiceContract } from './routes/shopkeeper-voice.routes'; import { shopkeeperTradeAgentContract } from './routes/shopkeeper-trade-agent.routes'; import { shopkeeperMobileLlmContract } from './routes/shopkeeper-mobile-llm.routes'; import { shopkeeperReservationsContract } from './routes/shopkeeper-reservations.routes'; import { shopkeeperIntelligenceContract } from './routes/shopkeeper-intelligence.routes'; import { shopkeeperSettingsContract } from './routes/shopkeeper-settings.routes'; import { storefrontContract } from './routes/storefront.routes'; import { shopkeeperPaymentsContract } from './routes/shopkeeper-payments.routes'; import { shopkeeperGroupBuyContract } from './routes/shopkeeper-group-buy.routes'; import { platformMarketIntelligenceContract } from './routes/platform-market-intelligence.routes'; export * from './schemas/shopkeeper-trade-agent.schemas'; export * from './routes/shopkeeper-trade-agent.routes'; const c = initContract(); export const apiContract = c.router( { shopkeeperDevice: shopkeeperDeviceContract, shopkeeper: shopkeeperContract, shopkeeperSync: shopkeeperSyncContract, shopkeeperBackup: shopkeeperBackupContract, shopkeeperWhatsapp: shopkeeperWhatsappContract, shopkeeperBilling: shopkeeperBillingContract, shopkeeperWallet: shopkeeperWalletContract, shopkeeperReports: shopkeeperReportsContract, shopkeeperAnalytics: shopkeeperAnalyticsContract, shopkeeperInstaller: shopkeeperInstallerContract, shopkeeperBarcodes: shopkeeperBarcodesContract, shopkeeperTelephony: shopkeeperTelephonyContract, shopkeeperVision: shopkeeperVisionContract, shopkeeperInsights: shopkeeperInsightsContract, shopkeeperAudit: shopkeeperAuditContract, shopkeeperVoice: shopkeeperVoiceContract, shopkeeperTradeAgent: shopkeeperTradeAgentContract, shopkeeperMobileLlm: shopkeeperMobileLlmContract, shopkeeperReservations: shopkeeperReservationsContract, shopkeeperIntelligence: shopkeeperIntelligenceContract, shopkeeperSettings: shopkeeperSettingsContract, storefront: storefrontContract, shopkeeperPayments: shopkeeperPaymentsContract, shopkeeperGroupBuy: shopkeeperGroupBuyContract, platformMarketIntelligence: platformMarketIntelligenceContract, }, { pathPrefix: '/api/v1' }, ); export type ApiContract = typeof apiContract;