@applite/js-sdk 0.0.13 → 0.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/http.ts","../src/modules/common/customer.ts","../src/modules/common/info.ts","../src/modules/common/stats.ts","../src/modules/common/finance.ts","../src/modules/common/welcome-item.ts","../src/modules/common/address.ts","../src/modules/common/notification-token.ts","../src/modules/common/notification.ts","../src/modules/common/webhook.ts","../src/modules/common/user.ts","../src/modules/store/badge.ts","../src/modules/store/category.ts","../src/modules/store/collection.ts","../src/modules/store/discount.ts","../src/modules/store/option.ts","../src/modules/store/order.ts","../src/modules/store/product.ts","../src/modules/store/seller.ts","../src/modules/store/shipping.ts","../src/modules/store/tag.ts","../src/modules/store/tax.ts","../src/modules/store/index.ts","../src/modules/multi-service/agent.ts","../src/modules/multi-service/appointment.ts","../src/modules/multi-service/company.ts","../src/modules/multi-service/service.ts","../src/modules/multi-service/field-template.ts","../src/modules/multi-service/index.ts","../src/modules/super-admin/apps.ts","../src/modules/super-admin/auth.ts","../src/modules/super-admin/finance.ts","../src/modules/super-admin/modules.ts","../src/modules/super-admin/notification.ts","../src/modules/super-admin/stats.ts","../src/modules/super-admin/index.ts","../src/modules/duticotac/balance.ts","../src/modules/duticotac/offer.ts","../src/modules/duticotac/payment.ts","../src/modules/duticotac/transaction.ts","../src/modules/duticotac/index.ts","../src/modules/kolabo/app.ts","../src/modules/kolabo/customer.ts","../src/modules/kolabo/partner.ts","../src/modules/kolabo/index.ts","../src/modules/maintenance/maintenance.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.mjs","sourcesContent":["export interface HttpClientConfig {\n /**\n * Base URL used for every request. Defaults to an empty string so that\n * relative paths can be used when the SDK is consumed alongside the API.\n */\n baseUrl?: string;\n /**\n * Optional headers that should be sent with every request.\n */\n headers?: HeadersInit;\n /**\n * Custom fetch implementation for environments where the global fetch is\n * not available or needs to be mocked during testing.\n */\n fetchFn?: typeof fetch;\n}\n\nexport interface ApiSuccessResponse<T> {\n success: true;\n data: T;\n error?: unknown;\n}\n\nexport interface ApiSuccessResponseWithMeta<T> {\n success: true;\n data: T[];\n meta: {\n total: number;\n page: number;\n limit: number;\n totalPages: number;\n };\n error?: unknown;\n}\n\nexport interface ApiErrorResponse {\n success: false;\n error?: unknown;\n}\n\nexport type ApiResponse<T> = ApiSuccessResponse<T> | ApiErrorResponse;\n\nexport class HttpClient {\n private readonly baseUrl: string;\n private readonly headers: HeadersInit;\n private readonly fetchImpl: typeof fetch;\n\n constructor(config: HttpClientConfig = {}) {\n this.baseUrl = config.baseUrl?.replace(/\\/$/, \"\") ?? \"\";\n this.headers = config.headers ?? {};\n this.fetchImpl = config.fetchFn ?? fetch;\n }\n\n async post<T>(path: string, body: Record<string, unknown> | object): Promise<ApiSuccessResponse<T>> {\n const url = `${this.baseUrl}${path}`;\n const response = await this.fetchImpl(url, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...this.headers,\n },\n body: JSON.stringify(body),\n });\n\n const contentType = response.headers.get(\"content-type\") ?? \"\";\n const isJson = contentType.includes(\"application/json\");\n const payload: ApiResponse<T> | null = isJson\n ? await response.json()\n : null;\n\n if (!response.ok) {\n const message = payload?.error ?? response.statusText;\n throw new Error(`Request failed with status ${response.status}: ${message}`);\n }\n\n if (!payload || payload.success !== true) {\n throw new Error(`Request failed: ${payload?.error ?? \"Unknown error\"}`);\n }\n\n return payload;\n }\n\n async get<T>(\n path: string,\n options: {\n query?: Record<string, unknown>;\n headers?: HeadersInit;\n } = {}\n ): Promise<ApiSuccessResponse<T>> {\n const queryString = this.buildQueryString(options.query);\n const url = `${this.baseUrl}${path}${queryString}`;\n const response = await this.fetchImpl(url, {\n method: \"GET\",\n headers: {\n ...this.headers,\n ...options.headers,\n },\n });\n\n const contentType = response.headers.get(\"content-type\") ?? \"\";\n const isJson = contentType.includes(\"application/json\");\n const payload: ApiResponse<T> | null = isJson\n ? await response.json()\n : null;\n\n if (!response.ok) {\n const message = payload?.error ?? response.statusText;\n throw new Error(`Request failed with status ${response.status}: ${message}`);\n }\n\n if (!payload || payload.success !== true) {\n throw new Error(`Request failed: ${payload?.error ?? \"Unknown error\"}`);\n }\n\n return payload;\n }\n\n private buildQueryString(query?: Record<string, unknown>): string {\n if (!query) {\n return \"\";\n }\n\n const params = new URLSearchParams();\n Object.entries(query).forEach(([key, value]) => {\n if (value === undefined || value === null) {\n return;\n }\n\n if (Array.isArray(value)) {\n value.forEach((item) => {\n if (item !== undefined && item !== null) {\n params.append(key, String(item));\n }\n });\n return;\n }\n\n params.append(key, String(value));\n });\n\n const queryString = params.toString();\n return queryString ? `?${queryString}` : \"\";\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n CustomerListItem,\n CustomerListFewItem,\n Customer,\n CustomerDetail,\n CustomerListParams,\n CustomerAuthParams,\n CustomerCheckParams,\n CustomerGetParams,\n CustomerUpdateParams,\n CustomerBlockParams,\n CustomerDeleteParams,\n CustomerSelfDeleteParams,\n} from \"@/types/customer\";\n\nexport class CustomerApi {\n constructor(private readonly http: HttpClient) {}\n\n async list(\n params: CustomerListParams\n ): Promise<ApiSuccessResponse<CustomerListItem[]>> {\n const { appId, apiKey, plateformType = [] } = params;\n return this.http.post<CustomerListItem[]>(\n `/app/${appId}/customer/list`,\n {\n apiKey,\n plateformType,\n }\n );\n }\n\n async auth(params: CustomerAuthParams): Promise<ApiSuccessResponse<Customer>> {\n const { appId, apiKey, fullname, email = null, telephone, plateform = null } = params;\n return this.http.post<Customer>(`/app/${appId}/customer/auth`, {\n apiKey,\n fullname,\n email,\n telephone,\n plateform,\n });\n }\n\n async check(\n params: CustomerCheckParams\n ): Promise<ApiSuccessResponse<Customer | null>> {\n const { appId, apiKey, telephone, plateform = null } = params;\n return this.http.post<Customer | null>(`/app/${appId}/customer/check`, {\n apiKey,\n telephone,\n plateform,\n });\n }\n\n async listFew(\n params: CustomerListParams\n ): Promise<ApiSuccessResponse<CustomerListFewItem[]>> {\n const { appId, apiKey, plateformType = [] } = params;\n return this.http.post<CustomerListFewItem[]>(\n `/app/${appId}/customer/list/few`,\n {\n apiKey,\n plateformType,\n }\n );\n }\n\n async get(\n params: CustomerGetParams\n ): Promise<ApiSuccessResponse<CustomerDetail | null>> {\n const { appId, apiKey, id } = params;\n return this.http.post<CustomerDetail | null>(\n `/app/${appId}/customer/${id}`,\n {\n apiKey,\n }\n );\n }\n\n async update(\n params: CustomerUpdateParams\n ): Promise<ApiSuccessResponse<CustomerDetail>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<CustomerDetail>(\n `/app/${appId}/customer/${id}/update`,\n {\n apiKey,\n ...rest,\n }\n );\n }\n\n async block(\n params: CustomerBlockParams\n ): Promise<ApiSuccessResponse<CustomerDetail>> {\n const { appId, apiKey, id, isBlocked } = params;\n return this.http.post<CustomerDetail>(\n `/app/${appId}/customer/${id}/block`,\n { apiKey, isBlocked }\n );\n }\n\n async delete(\n params: CustomerDeleteParams\n ): Promise<ApiSuccessResponse<CustomerDetail>> {\n const { appId, apiKey, id } = params;\n return this.http.post<CustomerDetail>(\n `/app/${appId}/customer/${id}/delete`,\n { apiKey }\n );\n }\n\n async deleteAccount(\n params: CustomerSelfDeleteParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, customerId, telephone } = params;\n return this.http.post<{ deleted: boolean }>(\n `/app/${appId}/customer/delete-account`,\n { apiKey, customerId, telephone }\n );\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n AppSummary,\n AppDetail,\n CreateAppParams,\n GetAppBySlugParams,\n ListAppsParams,\n GetAppByIdParams,\n UpdateAppParams,\n UpdateAppModulesParams,\n ToggleModuleParams,\n ToggleModuleResponse,\n} from \"@/types/app/info\";\n\nexport class InfoApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListAppsParams): Promise<ApiSuccessResponse<AppSummary[]>> {\n return this.http.post<AppSummary[]>(\"/app/list\", params);\n }\n\n create(params: CreateAppParams): Promise<ApiSuccessResponse<AppDetail>> {\n return this.http.post<AppDetail>(\"/app/create\", params);\n }\n\n getBySlug(\n params: GetAppBySlugParams\n ): Promise<ApiSuccessResponse<AppDetail>> {\n const { slug, ...body } = params;\n return this.http.post<AppDetail>(`/app/get/${slug}`, body);\n }\n\n getById(params: GetAppByIdParams): Promise<ApiSuccessResponse<AppDetail>> {\n const { appId, ...body } = params;\n return this.http.post<AppDetail>(`/app/${appId}`, body);\n }\n\n update(params: UpdateAppParams): Promise<ApiSuccessResponse<AppDetail>> {\n const { appId, ...body } = params;\n return this.http.post<AppDetail>(`/app/${appId}/update`, body);\n }\n\n updateModules(params: UpdateAppModulesParams): Promise<ApiSuccessResponse<AppDetail>> {\n const { appId, ...body } = params;\n return this.http.post<AppDetail>(`/app/${appId}/modules`, body);\n }\n\n toggleModule(params: ToggleModuleParams): Promise<ApiSuccessResponse<ToggleModuleResponse>> {\n const { appId, ...body } = params;\n return this.http.post<ToggleModuleResponse>(`/app/${appId}/modules/toggle`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n Statistic,\n GetStatisticParams,\n CreateStatisticParams,\n UpdateStatisticParams,\n} from \"@/types/app/stats\";\n\nexport class StatsApi {\n constructor(private readonly http: HttpClient) {}\n\n create(params: CreateStatisticParams): Promise<ApiSuccessResponse<Statistic>> {\n const { appId, ...body } = params;\n return this.http.post<Statistic>(`/app/${appId}/stats/create`, body);\n }\n\n get(params: GetStatisticParams): Promise<ApiSuccessResponse<number>> {\n const { appId, ...body } = params;\n return this.http.post<number>(`/app/${appId}/stats/get`, body);\n }\n\n set(params: CreateStatisticParams): Promise<ApiSuccessResponse<Statistic>> {\n const { appId, ...body } = params;\n return this.http.post<Statistic>(`/app/${appId}/stats/set`, body);\n }\n\n update(params: UpdateStatisticParams): Promise<ApiSuccessResponse<Statistic>> {\n const { appId, id, ...body } = params;\n return this.http.post<Statistic>(`/app/${appId}/stats/${id}/update`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n BalanceParams,\n TransactionListParams,\n TransactionGetParams,\n WithdrawParams,\n Transaction,\n TransactionDetail,\n WithdrawResult,\n} from \"@/types/app/finance\";\n\nexport class FinanceApi {\n constructor(private readonly http: HttpClient) {}\n\n balance(params: BalanceParams): Promise<ApiSuccessResponse<number | null>> {\n const { appId, ...body } = params;\n return this.http.post<number | null>(`/app/${appId}/balance`, body);\n }\n\n listTransactions(\n params: TransactionListParams\n ): Promise<ApiSuccessResponse<Transaction[]>> {\n const { appId, ...body } = params;\n return this.http.post<Transaction[]>(`/app/${appId}/transaction/list`, body);\n }\n\n getTransaction(\n params: TransactionGetParams\n ): Promise<ApiSuccessResponse<TransactionDetail | null>> {\n const { appId, id, ...body } = params;\n return this.http.post<TransactionDetail | null>(`/app/${appId}/transaction/${id}`, body);\n }\n\n withdraw(params: WithdrawParams): Promise<ApiSuccessResponse<WithdrawResult>> {\n const { appId, ...body } = params;\n return this.http.post<WithdrawResult>(`/app/${appId}/withdraw`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n WelcomeItem,\n ListWelcomeItemsParams,\n CreateWelcomeItemParams,\n UpdateWelcomeItemParams,\n GetWelcomeItemParams,\n DeleteWelcomeItemParams,\n} from \"@/types/app/welcome-item\";\n\nexport class WelcomeItemApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListWelcomeItemsParams): Promise<ApiSuccessResponse<WelcomeItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<WelcomeItem[]>(`/app/${appId}/welcome-item/list`, body);\n }\n\n create(params: CreateWelcomeItemParams): Promise<ApiSuccessResponse<WelcomeItem>> {\n const { appId, ...body } = params;\n return this.http.post<WelcomeItem>(`/app/${appId}/welcome-item/create`, body);\n }\n\n get(params: GetWelcomeItemParams): Promise<ApiSuccessResponse<WelcomeItem | null>> {\n const { appId, id, ...body } = params;\n return this.http.post<WelcomeItem | null>(`/app/${appId}/welcome-item/${id}`, body);\n }\n\n update(params: UpdateWelcomeItemParams): Promise<ApiSuccessResponse<WelcomeItem>> {\n const { appId, id, ...body } = params;\n return this.http.post<WelcomeItem>(`/app/${appId}/welcome-item/${id}/edit`, body);\n }\n\n delete(params: DeleteWelcomeItemParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/welcome-item/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n Address,\n AddressListParams,\n CreateAddressParams,\n UpdateAddressParams,\n AddressDeleteParams,\n GetAddressByIdParams,\n} from \"@/types/address\";\n\nexport class AddressApi {\n constructor(private readonly http: HttpClient) {}\n\n async list(params: AddressListParams): Promise<ApiSuccessResponse<Address[]>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<Address[]>(`/app/${appId}/address/list`, {\n apiKey,\n ...rest,\n });\n }\n\n async create(params: CreateAddressParams): Promise<ApiSuccessResponse<Address>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<Address>(`/app/${appId}/address/create`, {\n apiKey,\n ...rest,\n });\n }\n\n async update(params: UpdateAddressParams): Promise<ApiSuccessResponse<Address>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<Address>(`/app/${appId}/address/${id}/edit`, {\n apiKey,\n ...rest,\n });\n }\n\n async delete(\n params: AddressDeleteParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, id } = params;\n return this.http.post<{ deleted: boolean }>(\n `/app/${appId}/address/${id}/delete`,\n { apiKey }\n );\n }\n\n async getById(params: GetAddressByIdParams): Promise<ApiSuccessResponse<Address>> {\n const { appId, apiKey, id } = params;\n return this.http.post<Address>(`/app/${appId}/address/${id}`, { apiKey });\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n NotificationToken,\n RemoveTokenResponse,\n RemoveAllTokensResponse,\n SetNotificationTokenParams,\n RemoveNotificationTokenParams,\n RemoveAllNotificationTokensParams,\n ListNotificationTokensParams,\n} from \"@/types/notification-token\";\n\nexport class NotificationTokenApi {\n constructor(private readonly http: HttpClient) {}\n\n async set(\n params: SetNotificationTokenParams\n ): Promise<ApiSuccessResponse<NotificationToken>> {\n const { appId, apiKey, customerId, ...rest } = params;\n return this.http.post<NotificationToken>(\n `/app/${appId}/customer/${customerId}/notification-token/set`,\n { apiKey, ...rest }\n );\n }\n\n async remove(\n params: RemoveNotificationTokenParams\n ): Promise<ApiSuccessResponse<RemoveTokenResponse>> {\n const { appId, apiKey, customerId, token } = params;\n return this.http.post<RemoveTokenResponse>(\n `/app/${appId}/customer/${customerId}/notification-token/remove`,\n { apiKey, token }\n );\n }\n\n async removeAll(\n params: RemoveAllNotificationTokensParams\n ): Promise<ApiSuccessResponse<RemoveAllTokensResponse>> {\n const { appId, apiKey, customerId } = params;\n return this.http.post<RemoveAllTokensResponse>(\n `/app/${appId}/customer/${customerId}/notification-token/remove-all`,\n { apiKey }\n );\n }\n\n async list(\n params: ListNotificationTokensParams\n ): Promise<ApiSuccessResponse<NotificationToken[]>> {\n const { appId, apiKey, customerId } = params;\n return this.http.post<NotificationToken[]>(\n `/app/${appId}/customer/${customerId}/notification-token/list`,\n { apiKey }\n );\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n DeleteFirebaseConfigParams,\n DeleteNotificationTemplateParams,\n FirebaseConfig,\n GetFirebaseConfigParams,\n GetNotificationLogsParams,\n GetNotificationTemplatesParams,\n NotificationLog,\n NotificationLogsResponse,\n NotificationTemplate,\n SetFirebaseConfigParams,\n SetNotificationTemplateParams,\n} from \"@/types/notification\";\n\nexport class NotificationApi {\n constructor(private readonly http: HttpClient) {}\n\n getFirebaseConfig(\n params: GetFirebaseConfigParams\n ): Promise<ApiSuccessResponse<FirebaseConfig | null>> {\n return this.http.post<FirebaseConfig | null>(\n \"/notification/firebase-config\",\n params\n );\n }\n\n setFirebaseConfig(\n params: SetFirebaseConfigParams\n ): Promise<ApiSuccessResponse<FirebaseConfig>> {\n return this.http.post<FirebaseConfig>(\n \"/notification/firebase-config/set\",\n params\n );\n }\n\n deleteFirebaseConfig(\n params: DeleteFirebaseConfigParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\n \"/notification/firebase-config/delete\",\n params\n );\n }\n\n getTemplates(\n params: GetNotificationTemplatesParams\n ): Promise<ApiSuccessResponse<NotificationTemplate[]>> {\n return this.http.post<NotificationTemplate[]>(\"/notification/template\", params);\n }\n\n setTemplate(\n params: SetNotificationTemplateParams\n ): Promise<ApiSuccessResponse<NotificationTemplate>> {\n return this.http.post<NotificationTemplate>(\n \"/notification/template/set\",\n params\n );\n }\n\n deleteTemplate(\n params: DeleteNotificationTemplateParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/notification/template/delete\", params);\n }\n\n async getLogs(\n params: GetNotificationLogsParams\n ): Promise<ApiSuccessResponse<NotificationLogsResponse>> {\n const response = await this.http.post<NotificationLogsResponse | NotificationLog[]>(\n \"/notification/logs\",\n params\n );\n\n if (Array.isArray(response.data)) {\n return {\n ...response,\n data: {\n logs: response.data,\n total: response.data.length,\n limit: response.data.length,\n offset: 0,\n hasMore: false,\n },\n };\n }\n\n return response as ApiSuccessResponse<NotificationLogsResponse>;\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n DeleteWebhookParams,\n GetWebhookLogsParams,\n SetWebhookParams,\n Webhook,\n WebhookLogsResponse,\n} from \"@/types/webhook\";\nimport type { AppScopedParams } from \"@/types/common\";\n\nexport class WebhookApi {\n constructor(private readonly http: HttpClient) {}\n\n set(params: SetWebhookParams): Promise<ApiSuccessResponse<Webhook>> {\n return this.http.post<Webhook>(\"/webhook/set\", params);\n }\n\n list(params: AppScopedParams): Promise<ApiSuccessResponse<Webhook[]>> {\n return this.http.post<Webhook[]>(\"/webhook\", params);\n }\n\n delete(params: DeleteWebhookParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/webhook/delete\", params);\n }\n\n getLogs(params: GetWebhookLogsParams): Promise<ApiSuccessResponse<WebhookLogsResponse>> {\n return this.http.post<WebhookLogsResponse>(\"/webhook/logs\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n User,\n UserDeleteParams,\n UserEditCredentialsParams,\n UserGetParams,\n UserSetNotificationParams,\n UserSigninParams,\n UserSignupParams,\n UserUpdateParams,\n UserVerifyPasswordParams,\n} from \"@/types/user\";\n\nexport class UserApi {\n constructor(private readonly http: HttpClient) {}\n\n signup(params: UserSignupParams): Promise<ApiSuccessResponse<User>> {\n return this.http.post<User>(\"/user/signup\", {\n nom_de_famille: params.nomDeFamille,\n prenom: params.prenom,\n email: params.email,\n telephone: params.telephone,\n password: params.password,\n confirm: params.confirm,\n });\n }\n\n signin(params: UserSigninParams): Promise<ApiSuccessResponse<User>> {\n return this.http.post<User>(\"/user/signin\", params);\n }\n\n get(params: UserGetParams): Promise<ApiSuccessResponse<User | null>> {\n const { id, ...body } = params;\n return this.http.post<User | null>(`/user/${id}`, body);\n }\n\n update(params: UserUpdateParams): Promise<ApiSuccessResponse<User>> {\n const { id, nomDeFamille, ...rest } = params;\n return this.http.post<User>(`/user/${id}/update`, {\n ...rest,\n nom_de_famille: nomDeFamille,\n });\n }\n\n delete(params: UserDeleteParams): Promise<ApiSuccessResponse<unknown>> {\n const { id, ...body } = params;\n return this.http.post<unknown>(`/user/${id}/delete`, body);\n }\n\n editCredentials(\n params: UserEditCredentialsParams\n ): Promise<ApiSuccessResponse<User>> {\n const { id, ...body } = params;\n return this.http.post<User>(`/user/${id}/edit-cred`, body);\n }\n\n verifyPassword(\n params: UserVerifyPasswordParams\n ): Promise<ApiSuccessResponse<boolean>> {\n const { id, ...body } = params;\n return this.http.post<boolean>(`/user/${id}/verify-pass`, body);\n }\n\n setNotification(\n params: UserSetNotificationParams\n ): Promise<ApiSuccessResponse<User>> {\n const { id, ...body } = params;\n return this.http.post<User>(`/user/${id}/set-notification`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreBadgeListItem,\n StoreBadgeDetail,\n CreateBadgeParams,\n UpdateBadgeParams,\n DeleteBadgeParams,\n GetBadgeParams,\n ListBadgesParams,\n} from \"@/types/store/badge\";\n\nexport class BadgeApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListBadgesParams): Promise<ApiSuccessResponse<StoreBadgeListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreBadgeListItem[]>(`/app/${appId}/store/badge/list`, body);\n }\n\n create(params: CreateBadgeParams): Promise<ApiSuccessResponse<StoreBadgeDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreBadgeDetail>(`/app/${appId}/store/badge/create`, body);\n }\n\n get(params: GetBadgeParams): Promise<ApiSuccessResponse<StoreBadgeDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreBadgeDetail>(`/app/${appId}/store/badge/${id}`, body);\n }\n\n update(params: UpdateBadgeParams): Promise<ApiSuccessResponse<StoreBadgeDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreBadgeDetail>(`/app/${appId}/store/badge/${id}/edit`, body);\n }\n\n delete(params: DeleteBadgeParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/badge/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreCategoryListItem,\n StoreCategoryDetail,\n CreateCategoryParams,\n UpdateCategoryParams,\n DeleteCategoryParams,\n GetCategoryParams,\n ListCategoriesParams,\n} from \"@/types/store/category\";\n\nexport class CategoryApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListCategoriesParams): Promise<ApiSuccessResponseWithMeta<StoreCategoryListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/category/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreCategoryListItem>>;\n }\n\n create(params: CreateCategoryParams): Promise<ApiSuccessResponse<StoreCategoryDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreCategoryDetail>(`/app/${appId}/store/category/create`, body);\n }\n\n get(params: GetCategoryParams): Promise<ApiSuccessResponse<StoreCategoryDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCategoryDetail>(`/app/${appId}/store/category/${id}`, body);\n }\n\n update(params: UpdateCategoryParams): Promise<ApiSuccessResponse<StoreCategoryDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCategoryDetail>(`/app/${appId}/store/category/${id}/edit`, body);\n }\n\n delete(params: DeleteCategoryParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/category/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreCollectionListItem,\n StoreCollectionDetail,\n CreateCollectionParams,\n UpdateCollectionParams,\n DeleteCollectionParams,\n GetCollectionParams,\n ListCollectionsParams,\n} from \"@/types/store/collection\";\n\nexport class CollectionApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListCollectionsParams): Promise<ApiSuccessResponseWithMeta<StoreCollectionListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/collection/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreCollectionListItem>>;\n }\n\n create(params: CreateCollectionParams): Promise<ApiSuccessResponse<StoreCollectionDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreCollectionDetail>(`/app/${appId}/store/collection/create`, body);\n }\n\n get(params: GetCollectionParams): Promise<ApiSuccessResponse<StoreCollectionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCollectionDetail>(`/app/${appId}/store/collection/${id}`, body);\n }\n\n update(params: UpdateCollectionParams): Promise<ApiSuccessResponse<StoreCollectionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCollectionDetail>(`/app/${appId}/store/collection/${id}/edit`, body);\n }\n\n delete(params: DeleteCollectionParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/collection/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreDiscountListItem,\n StoreDiscountDetail,\n CreateDiscountParams,\n UpdateDiscountParams,\n DeleteDiscountParams,\n GetDiscountParams,\n ListDiscountsParams,\n} from \"@/types/store/discount\";\n\nexport class DiscountApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListDiscountsParams): Promise<ApiSuccessResponseWithMeta<StoreDiscountListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/discount/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreDiscountListItem>>;\n }\n\n create(params: CreateDiscountParams): Promise<ApiSuccessResponse<StoreDiscountDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreDiscountDetail>(`/app/${appId}/store/discount/create`, body);\n }\n\n get(params: GetDiscountParams): Promise<ApiSuccessResponse<StoreDiscountDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreDiscountDetail>(`/app/${appId}/store/discount/${id}`, body);\n }\n\n update(params: UpdateDiscountParams): Promise<ApiSuccessResponse<StoreDiscountDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreDiscountDetail>(`/app/${appId}/store/discount/${id}/edit`, body);\n }\n\n delete(params: DeleteDiscountParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/discount/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreOptionListItem,\n StoreOptionDetail,\n CreateOptionParams,\n UpdateOptionParams,\n DeleteOptionParams,\n GetOptionParams,\n ListOptionsParams,\n} from \"@/types/store/option\";\n\nexport class OptionApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListOptionsParams): Promise<ApiSuccessResponse<StoreOptionListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreOptionListItem[]>(`/app/${appId}/store/option/list`, body);\n }\n\n create(params: CreateOptionParams): Promise<ApiSuccessResponse<StoreOptionDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreOptionDetail>(`/app/${appId}/store/option/create`, body);\n }\n\n get(params: GetOptionParams): Promise<ApiSuccessResponse<StoreOptionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOptionDetail>(`/app/${appId}/store/option/${id}`, body);\n }\n\n update(params: UpdateOptionParams): Promise<ApiSuccessResponse<StoreOptionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOptionDetail>(`/app/${appId}/store/option/${id}/edit`, body);\n }\n\n delete(params: DeleteOptionParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/option/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreOrderListItem,\n StoreOrderDetail,\n CreateOrderParams,\n UpdateOrderParams,\n DeleteOrderParams,\n GetOrderParams,\n ListOrdersParams,\n} from \"@/types/store/order\";\n\nexport class OrderApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListOrdersParams): Promise<ApiSuccessResponseWithMeta<StoreOrderListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/order/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreOrderListItem>>;\n }\n\n create(params: CreateOrderParams): Promise<ApiSuccessResponse<StoreOrderDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreOrderDetail>(`/app/${appId}/store/order/create`, body);\n }\n\n get(params: GetOrderParams): Promise<ApiSuccessResponse<StoreOrderDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOrderDetail>(`/app/${appId}/store/order/${id}`, body);\n }\n\n update(params: UpdateOrderParams): Promise<ApiSuccessResponse<StoreOrderDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOrderDetail>(`/app/${appId}/store/order/${id}/edit`, body);\n }\n\n delete(params: DeleteOrderParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/order/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreProductListItem,\n StoreProductDetail,\n CreateProductParams,\n UpdateProductParams,\n DeleteProductParams,\n GetProductParams,\n ListProductsParams,\n} from \"@/types/store/product\";\n\nexport class ProductApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListProductsParams): Promise<ApiSuccessResponseWithMeta<StoreProductListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/product/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreProductListItem>>;\n }\n\n create(params: CreateProductParams): Promise<ApiSuccessResponse<StoreProductDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreProductDetail>(`/app/${appId}/store/product/create`, body);\n }\n\n get(params: GetProductParams): Promise<ApiSuccessResponse<StoreProductDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreProductDetail>(`/app/${appId}/store/product/${id}`, body);\n }\n\n update(params: UpdateProductParams): Promise<ApiSuccessResponse<StoreProductDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreProductDetail>(`/app/${appId}/store/product/${id}/edit`, body);\n }\n\n delete(params: DeleteProductParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/product/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreSellerListItem,\n StoreSellerDetail,\n CreateSellerParams,\n UpdateSellerParams,\n DeleteSellerParams,\n GetSellerParams,\n ListSellersParams,\n} from \"@/types/store/seller\";\n\nexport class SellerApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListSellersParams): Promise<ApiSuccessResponse<StoreSellerListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreSellerListItem[]>(`/app/${appId}/store/seller/list`, body);\n }\n\n create(params: CreateSellerParams): Promise<ApiSuccessResponse<StoreSellerDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreSellerDetail>(`/app/${appId}/store/seller/create`, body);\n }\n\n get(params: GetSellerParams): Promise<ApiSuccessResponse<StoreSellerDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreSellerDetail>(`/app/${appId}/store/seller/${id}`, body);\n }\n\n update(params: UpdateSellerParams): Promise<ApiSuccessResponse<StoreSellerDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreSellerDetail>(`/app/${appId}/store/seller/${id}/edit`, body);\n }\n\n delete(params: DeleteSellerParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/seller/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreShippingProfileListItem,\n StoreShippingProfileDetail,\n CreateShippingProfileParams,\n UpdateShippingProfileParams,\n DeleteShippingProfileParams,\n GetShippingProfileParams,\n ListShippingProfilesParams,\n} from \"@/types/store/shipping\";\n\nexport class ShippingApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListShippingProfilesParams): Promise<ApiSuccessResponse<StoreShippingProfileListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreShippingProfileListItem[]>(`/app/${appId}/store/shipping/list`, body);\n }\n\n create(params: CreateShippingProfileParams): Promise<ApiSuccessResponse<StoreShippingProfileDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreShippingProfileDetail>(`/app/${appId}/store/shipping/create`, body);\n }\n\n get(params: GetShippingProfileParams): Promise<ApiSuccessResponse<StoreShippingProfileDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreShippingProfileDetail>(`/app/${appId}/store/shipping/${id}`, body);\n }\n\n update(params: UpdateShippingProfileParams): Promise<ApiSuccessResponse<StoreShippingProfileDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreShippingProfileDetail>(`/app/${appId}/store/shipping/${id}/edit`, body);\n }\n\n delete(params: DeleteShippingProfileParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/shipping/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreTagListItem,\n StoreTagDetail,\n CreateTagParams,\n UpdateTagParams,\n DeleteTagParams,\n GetTagParams,\n ListTagsParams,\n} from \"@/types/store/tag\";\n\nexport class TagApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListTagsParams): Promise<ApiSuccessResponseWithMeta<StoreTagListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/tag/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreTagListItem>>;\n }\n\n create(params: CreateTagParams): Promise<ApiSuccessResponse<StoreTagDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreTagDetail>(`/app/${appId}/store/tag/create`, body);\n }\n\n get(params: GetTagParams): Promise<ApiSuccessResponse<StoreTagDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTagDetail>(`/app/${appId}/store/tag/${id}`, body);\n }\n\n update(params: UpdateTagParams): Promise<ApiSuccessResponse<StoreTagDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTagDetail>(`/app/${appId}/store/tag/${id}/edit`, body);\n }\n\n delete(params: DeleteTagParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/tag/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreTaxListItem,\n StoreTaxDetail,\n CreateTaxParams,\n UpdateTaxParams,\n DeleteTaxParams,\n GetTaxParams,\n ListTaxesParams,\n} from \"@/types/store/tax\";\n\nexport class TaxApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListTaxesParams): Promise<ApiSuccessResponse<StoreTaxListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreTaxListItem[]>(`/app/${appId}/store/tax/list`, body);\n }\n\n create(params: CreateTaxParams): Promise<ApiSuccessResponse<StoreTaxDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreTaxDetail>(`/app/${appId}/store/tax/create`, body);\n }\n\n get(params: GetTaxParams): Promise<ApiSuccessResponse<StoreTaxDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTaxDetail>(`/app/${appId}/store/tax/${id}`, body);\n }\n\n update(params: UpdateTaxParams): Promise<ApiSuccessResponse<StoreTaxDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTaxDetail>(`/app/${appId}/store/tax/${id}/edit`, body);\n }\n\n delete(params: DeleteTaxParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/tax/${id}/delete`, body);\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { BadgeApi } from \"./badge\";\nimport { CategoryApi } from \"./category\";\nimport { CollectionApi } from \"./collection\";\nimport { DiscountApi } from \"./discount\";\nimport { OptionApi } from \"./option\";\nimport { OrderApi } from \"./order\";\nimport { ProductApi } from \"./product\";\nimport { SellerApi } from \"./seller\";\nimport { ShippingApi } from \"./shipping\";\nimport { TagApi } from \"./tag\";\nimport { TaxApi } from \"./tax\";\n\nexport { BadgeApi } from \"./badge\";\nexport { CategoryApi } from \"./category\";\nexport { CollectionApi } from \"./collection\";\nexport { DiscountApi } from \"./discount\";\nexport { OptionApi } from \"./option\";\nexport { OrderApi } from \"./order\";\nexport { ProductApi } from \"./product\";\nexport { SellerApi } from \"./seller\";\nexport { ShippingApi } from \"./shipping\";\nexport { TagApi } from \"./tag\";\nexport { TaxApi } from \"./tax\";\n\nexport class StoreApi {\n readonly badge: BadgeApi;\n readonly category: CategoryApi;\n readonly collection: CollectionApi;\n readonly discount: DiscountApi;\n readonly option: OptionApi;\n readonly order: OrderApi;\n readonly product: ProductApi;\n readonly seller: SellerApi;\n readonly shipping: ShippingApi;\n readonly tag: TagApi;\n readonly tax: TaxApi;\n\n constructor(private readonly http: HttpClient) {\n this.badge = new BadgeApi(http);\n this.category = new CategoryApi(http);\n this.collection = new CollectionApi(http);\n this.discount = new DiscountApi(http);\n this.option = new OptionApi(http);\n this.order = new OrderApi(http);\n this.product = new ProductApi(http);\n this.seller = new SellerApi(http);\n this.shipping = new ShippingApi(http);\n this.tag = new TagApi(http);\n this.tax = new TaxApi(http);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceAgentListItem,\n MultiServiceAgentDetail,\n CreateAgentParams,\n UpdateAgentParams,\n DeleteAgentParams,\n GetAgentParams,\n ListAgentsParams,\n} from \"@/types/multi-service/agent\";\n\nexport class AgentApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListAgentsParams): Promise<ApiSuccessResponse<MultiServiceAgentListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAgentListItem[]>(`/app/${appId}/multi-service/agents/list`, body);\n }\n\n create(params: CreateAgentParams): Promise<ApiSuccessResponse<MultiServiceAgentDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAgentDetail>(`/app/${appId}/multi-service/agents/create`, body);\n }\n\n get(params: GetAgentParams): Promise<ApiSuccessResponse<MultiServiceAgentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAgentDetail>(`/app/${appId}/multi-service/agents/${id}`, body);\n }\n\n update(params: UpdateAgentParams): Promise<ApiSuccessResponse<MultiServiceAgentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAgentDetail>(`/app/${appId}/multi-service/agents/${id}/edit`, body);\n }\n\n delete(params: DeleteAgentParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/multi-service/agents/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceAppointmentListItem,\n MultiServiceAppointmentDetail,\n CreateAppointmentParams,\n UpdateAppointmentStatusParams,\n UpdateAppointmentAgentParams,\n GetAppointmentParams,\n ListAppointmentsParams,\n} from \"@/types/multi-service/appointment\";\n\nexport class AppointmentApi {\n constructor(private readonly http: HttpClient) {}\n\n create(params: CreateAppointmentParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(`/app/${appId}/multi-service/appointments/create`, body);\n }\n\n list(params: ListAppointmentsParams): Promise<ApiSuccessResponse<MultiServiceAppointmentListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAppointmentListItem[]>(`/app/${appId}/multi-service/appointments/list`, body);\n }\n\n updateStatus(params: UpdateAppointmentStatusParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(\n `/app/${appId}/multi-service/appointments/${id}/status`,\n body\n );\n }\n\n get(params: GetAppointmentParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(\n `/app/${appId}/multi-service/appointments/${id}`,\n body\n );\n }\n\n assignAgent(params: UpdateAppointmentAgentParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(\n `/app/${appId}/multi-service/appointments/${id}/assign-agent`,\n body\n );\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceCompanyListItem,\n MultiServiceCompanyDetail,\n CreateCompanyParams,\n UpdateCompanyParams,\n DeleteCompanyParams,\n GetCompanyParams,\n ListCompaniesParams,\n} from \"@/types/multi-service/company\";\n\nexport class CompanyApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListCompaniesParams): Promise<ApiSuccessResponse<MultiServiceCompanyListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceCompanyListItem[]>(`/app/${appId}/multi-service/companies/list`, body);\n }\n\n create(params: CreateCompanyParams): Promise<ApiSuccessResponse<MultiServiceCompanyDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceCompanyDetail>(`/app/${appId}/multi-service/companies/create`, body);\n }\n\n get(params: GetCompanyParams): Promise<ApiSuccessResponse<MultiServiceCompanyDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceCompanyDetail>(`/app/${appId}/multi-service/companies/${id}`, body);\n }\n\n update(params: UpdateCompanyParams): Promise<ApiSuccessResponse<MultiServiceCompanyDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceCompanyDetail>(`/app/${appId}/multi-service/companies/${id}/edit`, body);\n }\n\n delete(params: DeleteCompanyParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/multi-service/companies/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceServiceListItem,\n MultiServiceServiceDetail,\n CreateServiceParams,\n UpdateServiceParams,\n DeleteServiceParams,\n GetServiceParams,\n ListServicesParams,\n} from \"@/types/multi-service/service\";\n\nexport class ServiceApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListServicesParams): Promise<ApiSuccessResponse<MultiServiceServiceListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceServiceListItem[]>(`/app/${appId}/multi-service/services/list`, body);\n }\n\n create(params: CreateServiceParams): Promise<ApiSuccessResponse<MultiServiceServiceDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceServiceDetail>(`/app/${appId}/multi-service/services/create`, body);\n }\n\n get(params: GetServiceParams): Promise<ApiSuccessResponse<MultiServiceServiceDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceServiceDetail>(`/app/${appId}/multi-service/services/${id}`, body);\n }\n\n update(params: UpdateServiceParams): Promise<ApiSuccessResponse<MultiServiceServiceDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceServiceDetail>(`/app/${appId}/multi-service/services/${id}/edit`, body);\n }\n\n delete(params: DeleteServiceParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/multi-service/services/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceFieldTemplate,\n ListFieldTemplatesParams,\n CreateFieldTemplateParams,\n UpdateFieldTemplateParams,\n DeleteFieldTemplateParams,\n} from \"@/types/multi-service/field-template\";\n\nexport class FieldTemplateApi {\n constructor(private readonly http: HttpClient) {}\n\n async list(\n params: ListFieldTemplatesParams\n ): Promise<ApiSuccessResponse<MultiServiceFieldTemplate[]>> {\n const { appId, apiKey } = params;\n return this.http.post<MultiServiceFieldTemplate[]>(\n `/app/${appId}/multi-service/fields/list`,\n { apiKey }\n );\n }\n\n async create(\n params: CreateFieldTemplateParams\n ): Promise<ApiSuccessResponse<MultiServiceFieldTemplate>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<MultiServiceFieldTemplate>(\n `/app/${appId}/multi-service/fields/create`,\n { apiKey, ...rest }\n );\n }\n\n async update(\n params: UpdateFieldTemplateParams\n ): Promise<ApiSuccessResponse<MultiServiceFieldTemplate>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<MultiServiceFieldTemplate>(\n `/app/${appId}/multi-service/fields/${id}/edit`,\n { apiKey, ...rest }\n );\n }\n\n async delete(\n params: DeleteFieldTemplateParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, id } = params;\n return this.http.post<{ deleted: boolean }>(\n `/app/${appId}/multi-service/fields/${id}/delete`,\n { apiKey }\n );\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { AgentApi } from \"./agent\";\nimport { AppointmentApi } from \"./appointment\";\nimport { CompanyApi } from \"./company\";\nimport { ServiceApi } from \"./service\";\nimport { FieldTemplateApi } from \"./field-template\";\n\nexport { AgentApi } from \"./agent\";\nexport { AppointmentApi } from \"./appointment\";\nexport { CompanyApi } from \"./company\";\nexport { ServiceApi } from \"./service\";\nexport { FieldTemplateApi } from \"./field-template\";\n\nexport class MultiServiceApi {\n readonly company: CompanyApi;\n readonly service: ServiceApi;\n readonly appointment: AppointmentApi;\n readonly agent: AgentApi;\n readonly fieldTemplate: FieldTemplateApi;\n\n constructor(private readonly http: HttpClient) {\n this.company = new CompanyApi(http);\n this.service = new ServiceApi(http);\n this.appointment = new AppointmentApi(http);\n this.agent = new AgentApi(http);\n this.fieldTemplate = new FieldTemplateApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { SuperAdminAppListParams, SuperAdminAppListResponse } from \"@/types/super-admin\";\n\nexport class SuperAdminAppsApi {\n constructor(private readonly http: HttpClient) {}\n\n list(\n params: SuperAdminAppListParams\n ): Promise<ApiSuccessResponse<SuperAdminAppListResponse>> {\n return this.http.post<SuperAdminAppListResponse>(\"/super-admin/apps/list\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminInitParams,\n SuperAdminMeParams,\n SuperAdminSigninParams,\n SuperAdminUser,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminAuthApi {\n constructor(private readonly http: HttpClient) {}\n\n init(params: SuperAdminInitParams): Promise<ApiSuccessResponse<SuperAdminUser>> {\n return this.http.post<SuperAdminUser>(\"/super-admin/auth/init\", params);\n }\n\n signin(\n params: SuperAdminSigninParams\n ): Promise<ApiSuccessResponse<SuperAdminUser>> {\n return this.http.post<SuperAdminUser>(\"/super-admin/auth/signin\", params);\n }\n\n me(params: SuperAdminMeParams): Promise<ApiSuccessResponse<SuperAdminUser>> {\n return this.http.post<SuperAdminUser>(\"/super-admin/auth/me\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminTransactionListParams,\n SuperAdminTransactionListResponse,\n SuperAdminWithdrawParams,\n SuperAdminWithdrawResponse,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminFinanceApi {\n constructor(private readonly http: HttpClient) {}\n\n transactions(\n params: SuperAdminTransactionListParams\n ): Promise<ApiSuccessResponse<SuperAdminTransactionListResponse>> {\n return this.http.post<SuperAdminTransactionListResponse>(\n \"/super-admin/finance/transactions\",\n params\n );\n }\n\n withdraw(\n params: SuperAdminWithdrawParams\n ): Promise<ApiSuccessResponse<SuperAdminWithdrawResponse>> {\n return this.http.post<SuperAdminWithdrawResponse>(\n \"/super-admin/finance/withdraw\",\n params\n );\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminModuleUpdateParams,\n SuperAdminModulesListParams,\n SuperAdminPlatformModule,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminModulesApi {\n constructor(private readonly http: HttpClient) {}\n\n list(\n params: SuperAdminModulesListParams\n ): Promise<ApiSuccessResponse<SuperAdminPlatformModule[]>> {\n return this.http.post<SuperAdminPlatformModule[]>(\"/super-admin/modules/list\", params);\n }\n\n update(\n params: SuperAdminModuleUpdateParams\n ): Promise<ApiSuccessResponse<SuperAdminPlatformModule>> {\n return this.http.post<SuperAdminPlatformModule>(\"/super-admin/modules/update\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminNotificationSendParams,\n SuperAdminNotificationSendResponse,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminNotificationApi {\n constructor(private readonly http: HttpClient) {}\n\n send(\n params: SuperAdminNotificationSendParams\n ): Promise<ApiSuccessResponse<SuperAdminNotificationSendResponse>> {\n return this.http.post<SuperAdminNotificationSendResponse>(\n \"/super-admin/notification/send\",\n params\n );\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { SuperAdminStats, SuperAdminStatsParams } from \"@/types/super-admin\";\n\nexport class SuperAdminStatsApi {\n constructor(private readonly http: HttpClient) {}\n\n fetch(params: SuperAdminStatsParams): Promise<ApiSuccessResponse<SuperAdminStats>> {\n return this.http.post<SuperAdminStats>(\"/super-admin/stats\", params);\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { SuperAdminAppsApi } from \"./apps\";\nimport { SuperAdminAuthApi } from \"./auth\";\nimport { SuperAdminFinanceApi } from \"./finance\";\nimport { SuperAdminModulesApi } from \"./modules\";\nimport { SuperAdminNotificationApi } from \"./notification\";\nimport { SuperAdminStatsApi } from \"./stats\";\n\nexport { SuperAdminAppsApi } from \"./apps\";\nexport { SuperAdminAuthApi } from \"./auth\";\nexport { SuperAdminFinanceApi } from \"./finance\";\nexport { SuperAdminModulesApi } from \"./modules\";\nexport { SuperAdminNotificationApi } from \"./notification\";\nexport { SuperAdminStatsApi } from \"./stats\";\n\nexport class SuperAdminApi {\n readonly auth: SuperAdminAuthApi;\n readonly apps: SuperAdminAppsApi;\n readonly modules: SuperAdminModulesApi;\n readonly stats: SuperAdminStatsApi;\n readonly finance: SuperAdminFinanceApi;\n readonly notification: SuperAdminNotificationApi;\n\n constructor(private readonly http: HttpClient) {\n this.auth = new SuperAdminAuthApi(http);\n this.apps = new SuperAdminAppsApi(http);\n this.modules = new SuperAdminModulesApi(http);\n this.stats = new SuperAdminStatsApi(http);\n this.finance = new SuperAdminFinanceApi(http);\n this.notification = new SuperAdminNotificationApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { AppScopedParams } from \"@/types/common\";\n\nexport class DuticotacBalanceApi {\n constructor(private readonly http: HttpClient) {}\n\n get(params: AppScopedParams): Promise<ApiSuccessResponse<number>> {\n return this.http.post<number>(\"/duticotac/balance\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CreateDuticotacOfferParams,\n DuticotacOffer,\n EditDuticotacOfferParams,\n} from \"@/types/duticotac\";\nimport type { AppScopedParams } from \"@/types/common\";\n\nexport class DuticotacOfferApi {\n constructor(private readonly http: HttpClient) {}\n\n create(\n params: CreateDuticotacOfferParams\n ): Promise<ApiSuccessResponse<DuticotacOffer>> {\n return this.http.post<DuticotacOffer>(\"/duticotac/offer/create\", params);\n }\n\n edit(\n params: EditDuticotacOfferParams\n ): Promise<ApiSuccessResponse<DuticotacOffer>> {\n const { ref, ...body } = params;\n return this.http.post<DuticotacOffer>(`/duticotac/offer/${ref}/edit`, body);\n }\n\n delete(ref: string, params: AppScopedParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(`/duticotac/offer/${ref}/delete`, params);\n }\n\n list(params: AppScopedParams): Promise<ApiSuccessResponse<DuticotacOffer[]>> {\n return this.http.post<DuticotacOffer[]>(\"/duticotac/offer/list\", params);\n }\n\n get(ref: string, params: AppScopedParams): Promise<ApiSuccessResponse<DuticotacOffer>> {\n return this.http.post<DuticotacOffer>(`/duticotac/offer/${ref}`, params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CashInParams,\n CashOutParams,\n GetPaymentMethodsParams,\n PaymentMethodSetParams,\n} from \"@/types/duticotac\";\nimport type { TransactionProvider } from \"@/types/common\";\n\nexport class DuticotacPaymentApi {\n constructor(private readonly http: HttpClient) {}\n\n cashIn(params: CashInParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/duticotac/pay/mobile-money/cashin\", params);\n }\n\n cashOut(params: CashOutParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/duticotac/pay/mobile-money/cashout\", params);\n }\n\n setPaymentMethods(\n params: PaymentMethodSetParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/duticotac/payment-method/set\", params);\n }\n\n getPaymentMethods(\n params: GetPaymentMethodsParams\n ): Promise<ApiSuccessResponse<TransactionProvider[]>> {\n return this.http.post<TransactionProvider[]>(\"/duticotac/payment-method\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { DuticotacTransaction, DuticotacTransactionGetParams } from \"@/types/duticotac\";\n\nexport class DuticotacTransactionApi {\n constructor(private readonly http: HttpClient) {}\n\n get(\n params: DuticotacTransactionGetParams\n ): Promise<ApiSuccessResponse<DuticotacTransaction>> {\n return this.http.post<DuticotacTransaction>(\"/duticotac/transaction/get\", params);\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { DuticotacBalanceApi } from \"./balance\";\nimport { DuticotacOfferApi } from \"./offer\";\nimport { DuticotacPaymentApi } from \"./payment\";\nimport { DuticotacTransactionApi } from \"./transaction\";\n\nexport { DuticotacBalanceApi } from \"./balance\";\nexport { DuticotacOfferApi } from \"./offer\";\nexport { DuticotacPaymentApi } from \"./payment\";\nexport { DuticotacTransactionApi } from \"./transaction\";\n\nexport class DuticotacApi {\n readonly balance: DuticotacBalanceApi;\n readonly offer: DuticotacOfferApi;\n readonly payment: DuticotacPaymentApi;\n readonly transaction: DuticotacTransactionApi;\n\n constructor(private readonly http: HttpClient) {\n this.balance = new DuticotacBalanceApi(http);\n this.offer = new DuticotacOfferApi(http);\n this.payment = new DuticotacPaymentApi(http);\n this.transaction = new DuticotacTransactionApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { ApiKeyParams, AppScopedParams } from \"@/types/common\";\nimport type { ConfigureKolaboAppParams, KolaboApp } from \"@/types/kolabo\";\n\nexport class KolaboAppApi {\n constructor(private readonly http: HttpClient) {}\n\n configure(\n slug: string,\n params: ConfigureKolaboAppParams\n ): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}/configure`, params);\n }\n\n join(slug: string, params: AppScopedParams): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}/join`, params);\n }\n\n getBySlug(slug: string, params: ApiKeyParams): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}`, params);\n }\n\n get(slug: string, params: AppScopedParams): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}/get`, params);\n }\n\n list(params: ApiKeyParams): Promise<ApiSuccessResponse<KolaboApp[]>> {\n return this.http.post<KolaboApp[]>(\"/kolabo/app/list\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CreateKolaboCustomerParams,\n CreateKolaboCustomerPartnershipParams,\n KolaboCustomer,\n} from \"@/types/kolabo\";\n\nexport class KolaboCustomerApi {\n constructor(private readonly http: HttpClient) {}\n\n create(\n params: CreateKolaboCustomerParams\n ): Promise<ApiSuccessResponse<KolaboCustomer>> {\n return this.http.post<KolaboCustomer>(\"/kolabo/customer/create\", params);\n }\n\n createPartnership(\n params: CreateKolaboCustomerPartnershipParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/kolabo/customer/create-partnership\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { ApiKeyParams } from \"@/types/common\";\nimport type {\n AddKolaboAppToPartnerParams,\n CheckKolaboPartnerParams,\n DeleteKolaboPartnerParams,\n EditKolaboPartnerProfileParams,\n GetKolaboPartnerAppsParams,\n GetKolaboPartnerTransactionParams,\n KolaboApp,\n KolaboPartner,\n KolaboPartnerShip,\n KolaboPartnerTransactionDetail,\n KolaboPartnerTransactionListItem,\n KolaboPartnerWithdrawWebhookParams,\n KolaboPartnerWithdrawWebhookTransaction,\n ListKolaboPartnerTransactionsParams,\n SetPinParams,\n SignUpKolaboPartnerParams,\n WithdrawKolaboPartnerParams,\n} from \"@/types/kolabo\";\n\nexport class KolaboPartnerApi {\n constructor(private readonly http: HttpClient) {}\n\n signUp(\n params: SignUpKolaboPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartner>> {\n return this.http.post<KolaboPartner>(\"/kolabo/partner/signup\", params);\n }\n\n check(\n params: CheckKolaboPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartner | null>> {\n return this.http.post<KolaboPartner | null>(\"/kolabo/partner/check\", params);\n }\n\n get(id: string, params: ApiKeyParams): Promise<ApiSuccessResponse<KolaboPartner>> {\n return this.http.post<KolaboPartner>(`/kolabo/partner/${id}`, params);\n }\n\n editProfile(\n id: string,\n params: EditKolaboPartnerProfileParams\n ): Promise<ApiSuccessResponse<KolaboPartner>> {\n return this.http.post<KolaboPartner>(`/kolabo/partner/${id}/edit-profile`, params);\n }\n\n getLink(\n id: string,\n params: AddKolaboAppToPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartnerShip>> {\n return this.http.post<KolaboPartnerShip>(`/kolabo/partner/${id}/get-link`, params);\n }\n\n getPartnership(\n id: string,\n params: AddKolaboAppToPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartnerShip | null>> {\n return this.http.post<KolaboPartnerShip | null>(\n `/kolabo/partner/${id}/get-partnership`,\n params\n );\n }\n\n setPin(id: string, params: SetPinParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(`/kolabo/partner/${id}/set-pin`, params);\n }\n\n cancelPartnership(\n id: string,\n params: AddKolaboAppToPartnerParams\n ): Promise<ApiSuccessResponse<boolean>> {\n return this.http.post<boolean>(`/kolabo/partner/${id}/cancel-partnership`, params);\n }\n\n delete(id: string, params: DeleteKolaboPartnerParams): Promise<ApiSuccessResponse<boolean>> {\n return this.http.post<boolean>(`/kolabo/partner/${id}/delete`, params);\n }\n\n apps(id: string, params: GetKolaboPartnerAppsParams): Promise<ApiSuccessResponse<KolaboApp[]>> {\n return this.http.post<KolaboApp[]>(`/kolabo/partner/${id}/apps`, params);\n }\n\n listTransactions(\n id: string,\n params: ListKolaboPartnerTransactionsParams\n ): Promise<ApiSuccessResponse<KolaboPartnerTransactionListItem[]>> {\n return this.http.post<KolaboPartnerTransactionListItem[]>(\n `/kolabo/partner/${id}/transaction/list`,\n params\n );\n }\n\n transaction(\n id: string,\n params: GetKolaboPartnerTransactionParams\n ): Promise<ApiSuccessResponse<KolaboPartnerTransactionDetail | null>> {\n return this.http.post<KolaboPartnerTransactionDetail | null>(\n `/kolabo/partner/${id}/transaction`,\n params\n );\n }\n\n withdraw(\n id: string,\n params: WithdrawKolaboPartnerParams\n ): Promise<ApiSuccessResponse<boolean>> {\n return this.http.post<boolean>(`/kolabo/partner/${id}/withdraw`, params);\n }\n\n withdrawWebhook(\n id: string,\n params: KolaboPartnerWithdrawWebhookParams\n ): Promise<ApiSuccessResponse<KolaboPartnerWithdrawWebhookTransaction>> {\n return this.http.post<KolaboPartnerWithdrawWebhookTransaction>(\n `/kolabo/partner/${id}/withdraw/webhook`,\n {\n appId: params.appId,\n service_id: params.serviceId,\n gu_transaction_id: params.guTransactionId,\n status: params.status,\n partner_transaction_id: params.partnerTransactionId,\n call_back_url: params.callBackUrl,\n commission: params.commission,\n message: params.message,\n }\n );\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { KolaboAppApi } from \"./app\";\nimport { KolaboCustomerApi } from \"./customer\";\nimport { KolaboPartnerApi } from \"./partner\";\n\nexport { KolaboAppApi } from \"./app\";\nexport { KolaboCustomerApi } from \"./customer\";\nexport { KolaboPartnerApi } from \"./partner\";\n\nexport class KolaboApi {\n readonly app: KolaboAppApi;\n readonly customer: KolaboCustomerApi;\n readonly partner: KolaboPartnerApi;\n\n constructor(private readonly http: HttpClient) {\n this.app = new KolaboAppApi(http);\n this.customer = new KolaboCustomerApi(http);\n this.partner = new KolaboPartnerApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CleanupTransactionsParams,\n CleanupTransactionsResult,\n CronBillingParams,\n CronBillingResponse,\n CronNotificationParams,\n CronNotificationResponse,\n} from \"@/types/maintenance\";\n\nexport class MaintenanceApi {\n constructor(private readonly http: HttpClient) {}\n\n cronNotification(\n params: CronNotificationParams = {}\n ): Promise<ApiSuccessResponse<CronNotificationResponse>> {\n return this.http.get<CronNotificationResponse>(\"/cron/notification\", {\n query: params,\n });\n }\n\n cronBilling(params: CronBillingParams): Promise<ApiSuccessResponse<CronBillingResponse>> {\n const { authorizationToken, ...query } = params;\n const headers = authorizationToken\n ? { authorization: `Bearer ${authorizationToken}` }\n : undefined;\n\n return this.http.get<CronBillingResponse>(\"/cron/billing\", {\n query,\n headers,\n });\n }\n\n cleanupTransactions(\n params: CleanupTransactionsParams = {}\n ): Promise<ApiSuccessResponse<CleanupTransactionsResult>> {\n return this.http.get<CleanupTransactionsResult>(\"/cleanup/transactions\", {\n query: params,\n });\n }\n}\n","import { HttpClient, HttpClientConfig } from \"./http\";\nimport {\n CustomerApi,\n InfoApi,\n StatsApi,\n FinanceApi,\n WelcomeItemApi,\n AddressApi,\n NotificationTokenApi,\n NotificationApi,\n WebhookApi,\n UserApi,\n} from \"./modules/common\";\nimport { StoreApi } from \"./modules/store\";\nimport { MultiServiceApi } from \"./modules/multi-service\";\nimport { SuperAdminApi } from \"./modules/super-admin\";\nimport { DuticotacApi } from \"./modules/duticotac\";\nimport { KolaboApi } from \"./modules/kolabo\";\nimport { MaintenanceApi } from \"./modules/maintenance\";\n\nexport interface AppliteUIConfig extends HttpClientConfig {}\n\nexport class AppliteUI {\n readonly http: HttpClient;\n readonly customer: CustomerApi;\n readonly stats: StatsApi;\n readonly finance: FinanceApi;\n readonly welcomeItem: WelcomeItemApi;\n readonly info: InfoApi;\n readonly address: AddressApi;\n readonly notificationToken: NotificationTokenApi;\n readonly notification: NotificationApi;\n readonly webhook: WebhookApi;\n readonly user: UserApi;\n readonly store: StoreApi;\n readonly multiService: MultiServiceApi;\n readonly superAdmin: SuperAdminApi;\n readonly duticotac: DuticotacApi;\n readonly kolabo: KolaboApi;\n readonly maintenance: MaintenanceApi;\n\n constructor(config: AppliteUIConfig = {}) {\n this.http = new HttpClient({\n baseUrl: config.baseUrl,\n headers: config.headers,\n fetchFn: config.fetchFn,\n });\n\n this.customer = new CustomerApi(this.http);\n this.stats = new StatsApi(this.http);\n this.finance = new FinanceApi(this.http);\n this.welcomeItem = new WelcomeItemApi(this.http);\n this.info = new InfoApi(this.http);\n this.address = new AddressApi(this.http);\n this.notificationToken = new NotificationTokenApi(this.http);\n this.notification = new NotificationApi(this.http);\n this.webhook = new WebhookApi(this.http);\n this.user = new UserApi(this.http);\n this.store = new StoreApi(this.http);\n this.multiService = new MultiServiceApi(this.http);\n this.superAdmin = new SuperAdminApi(this.http);\n this.duticotac = new DuticotacApi(this.http);\n this.kolabo = new KolaboApi(this.http);\n this.maintenance = new MaintenanceApi(this.http);\n }\n}\n\nexport * from \"./http\";\nexport * from \"./modules\";\n\n// Export all types\nexport * from \"./types\";\n"]}
1
+ {"version":3,"sources":["../src/http.ts","../src/modules/common/customer.ts","../src/modules/common/info.ts","../src/modules/common/stats.ts","../src/modules/common/finance.ts","../src/modules/common/welcome-item.ts","../src/modules/common/address.ts","../src/modules/common/notification-token.ts","../src/modules/common/notification.ts","../src/modules/common/webhook.ts","../src/modules/common/user.ts","../src/modules/common/testimony.ts","../src/modules/store/badge.ts","../src/modules/store/cart.ts","../src/modules/store/category.ts","../src/modules/store/collection.ts","../src/modules/store/discount.ts","../src/modules/store/option.ts","../src/modules/store/order.ts","../src/modules/store/product.ts","../src/modules/store/seller.ts","../src/modules/store/shipping.ts","../src/modules/store/tag.ts","../src/modules/store/tax.ts","../src/modules/store/index.ts","../src/modules/multi-service/agent.ts","../src/modules/multi-service/appointment.ts","../src/modules/multi-service/company.ts","../src/modules/multi-service/service.ts","../src/modules/multi-service/field-template.ts","../src/modules/multi-service/index.ts","../src/modules/super-admin/apps.ts","../src/modules/super-admin/auth.ts","../src/modules/super-admin/finance.ts","../src/modules/super-admin/modules.ts","../src/modules/super-admin/notification.ts","../src/modules/super-admin/stats.ts","../src/modules/super-admin/index.ts","../src/modules/duticotac/balance.ts","../src/modules/duticotac/offer.ts","../src/modules/duticotac/payment.ts","../src/modules/duticotac/transaction.ts","../src/modules/duticotac/index.ts","../src/modules/kolabo/app.ts","../src/modules/kolabo/customer.ts","../src/modules/kolabo/partner.ts","../src/modules/kolabo/index.ts","../src/modules/maintenance/maintenance.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.mjs","sourcesContent":["export interface HttpClientConfig {\n /**\n * Base URL used for every request. Defaults to an empty string so that\n * relative paths can be used when the SDK is consumed alongside the API.\n */\n baseUrl?: string;\n /**\n * Optional headers that should be sent with every request.\n */\n headers?: HeadersInit;\n /**\n * Custom fetch implementation for environments where the global fetch is\n * not available or needs to be mocked during testing.\n */\n fetchFn?: typeof fetch;\n}\n\nexport interface ApiSuccessResponse<T> {\n success: true;\n data: T;\n error?: unknown;\n}\n\nexport interface ApiSuccessResponseWithMeta<T> {\n success: true;\n data: T[];\n meta: {\n total: number;\n page: number;\n limit: number;\n totalPages: number;\n };\n error?: unknown;\n}\n\nexport interface ApiErrorResponse {\n success: false;\n error?: unknown;\n}\n\nexport type ApiResponse<T> = ApiSuccessResponse<T> | ApiErrorResponse;\n\nexport class HttpClient {\n private readonly baseUrl: string;\n private readonly headers: HeadersInit;\n private readonly fetchImpl: typeof fetch;\n\n constructor(config: HttpClientConfig = {}) {\n this.baseUrl = config.baseUrl?.replace(/\\/$/, \"\") ?? \"\";\n this.headers = config.headers ?? {};\n this.fetchImpl = config.fetchFn ?? fetch;\n }\n\n async post<T>(path: string, body: Record<string, unknown> | object): Promise<ApiSuccessResponse<T>> {\n const url = `${this.baseUrl}${path}`;\n const response = await this.fetchImpl(url, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n ...this.headers,\n },\n body: JSON.stringify(body),\n });\n\n const contentType = response.headers.get(\"content-type\") ?? \"\";\n const isJson = contentType.includes(\"application/json\");\n const payload: ApiResponse<T> | null = isJson\n ? await response.json()\n : null;\n\n if (!response.ok) {\n const message = payload?.error ?? response.statusText;\n throw new Error(`Request failed with status ${response.status}: ${message}`);\n }\n\n if (!payload || payload.success !== true) {\n throw new Error(`Request failed: ${payload?.error ?? \"Unknown error\"}`);\n }\n\n return payload;\n }\n\n async get<T>(\n path: string,\n options: {\n query?: Record<string, unknown>;\n headers?: HeadersInit;\n } = {}\n ): Promise<ApiSuccessResponse<T>> {\n const queryString = this.buildQueryString(options.query);\n const url = `${this.baseUrl}${path}${queryString}`;\n const response = await this.fetchImpl(url, {\n method: \"GET\",\n headers: {\n ...this.headers,\n ...options.headers,\n },\n });\n\n const contentType = response.headers.get(\"content-type\") ?? \"\";\n const isJson = contentType.includes(\"application/json\");\n const payload: ApiResponse<T> | null = isJson\n ? await response.json()\n : null;\n\n if (!response.ok) {\n const message = payload?.error ?? response.statusText;\n throw new Error(`Request failed with status ${response.status}: ${message}`);\n }\n\n if (!payload || payload.success !== true) {\n throw new Error(`Request failed: ${payload?.error ?? \"Unknown error\"}`);\n }\n\n return payload;\n }\n\n private buildQueryString(query?: Record<string, unknown>): string {\n if (!query) {\n return \"\";\n }\n\n const params = new URLSearchParams();\n Object.entries(query).forEach(([key, value]) => {\n if (value === undefined || value === null) {\n return;\n }\n\n if (Array.isArray(value)) {\n value.forEach((item) => {\n if (item !== undefined && item !== null) {\n params.append(key, String(item));\n }\n });\n return;\n }\n\n params.append(key, String(value));\n });\n\n const queryString = params.toString();\n return queryString ? `?${queryString}` : \"\";\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n CustomerListItem,\n CustomerListFewItem,\n Customer,\n CustomerDetail,\n CustomerListParams,\n CustomerAuthParams,\n CustomerCheckParams,\n CustomerGetParams,\n CustomerUpdateParams,\n CustomerBlockParams,\n CustomerDeleteParams,\n CustomerSelfDeleteParams,\n} from \"@/types/customer\";\n\nexport class CustomerApi {\n constructor(private readonly http: HttpClient) {}\n\n async list(\n params: CustomerListParams\n ): Promise<ApiSuccessResponse<CustomerListItem[]>> {\n const { appId, apiKey, plateformType = [] } = params;\n return this.http.post<CustomerListItem[]>(\n `/app/${appId}/customer/list`,\n {\n apiKey,\n plateformType,\n }\n );\n }\n\n async auth(params: CustomerAuthParams): Promise<ApiSuccessResponse<Customer>> {\n const { appId, apiKey, fullname, email = null, telephone, plateform = null } = params;\n return this.http.post<Customer>(`/app/${appId}/customer/auth`, {\n apiKey,\n fullname,\n email,\n telephone,\n plateform,\n });\n }\n\n async check(\n params: CustomerCheckParams\n ): Promise<ApiSuccessResponse<Customer | null>> {\n const { appId, apiKey, telephone, plateform = null } = params;\n return this.http.post<Customer | null>(`/app/${appId}/customer/check`, {\n apiKey,\n telephone,\n plateform,\n });\n }\n\n async listFew(\n params: CustomerListParams\n ): Promise<ApiSuccessResponse<CustomerListFewItem[]>> {\n const { appId, apiKey, plateformType = [] } = params;\n return this.http.post<CustomerListFewItem[]>(\n `/app/${appId}/customer/list/few`,\n {\n apiKey,\n plateformType,\n }\n );\n }\n\n async get(\n params: CustomerGetParams\n ): Promise<ApiSuccessResponse<CustomerDetail | null>> {\n const { appId, apiKey, id } = params;\n return this.http.post<CustomerDetail | null>(\n `/app/${appId}/customer/${id}`,\n {\n apiKey,\n }\n );\n }\n\n async update(\n params: CustomerUpdateParams\n ): Promise<ApiSuccessResponse<CustomerDetail>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<CustomerDetail>(\n `/app/${appId}/customer/${id}/update`,\n {\n apiKey,\n ...rest,\n }\n );\n }\n\n async block(\n params: CustomerBlockParams\n ): Promise<ApiSuccessResponse<CustomerDetail>> {\n const { appId, apiKey, id, isBlocked } = params;\n return this.http.post<CustomerDetail>(\n `/app/${appId}/customer/${id}/block`,\n { apiKey, isBlocked }\n );\n }\n\n async delete(\n params: CustomerDeleteParams\n ): Promise<ApiSuccessResponse<CustomerDetail>> {\n const { appId, apiKey, id } = params;\n return this.http.post<CustomerDetail>(\n `/app/${appId}/customer/${id}/delete`,\n { apiKey }\n );\n }\n\n async deleteAccount(\n params: CustomerSelfDeleteParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, customerId, telephone } = params;\n return this.http.post<{ deleted: boolean }>(\n `/app/${appId}/customer/delete-account`,\n { apiKey, customerId, telephone }\n );\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n AppSummary,\n AppDetail,\n CreateAppParams,\n GetAppBySlugParams,\n ListAppsParams,\n GetAppByIdParams,\n UpdateAppParams,\n UpdateAppModulesParams,\n ToggleModuleParams,\n ToggleModuleResponse,\n} from \"@/types/app/info\";\n\nexport class InfoApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListAppsParams): Promise<ApiSuccessResponse<AppSummary[]>> {\n return this.http.post<AppSummary[]>(\"/app/list\", params);\n }\n\n create(params: CreateAppParams): Promise<ApiSuccessResponse<AppDetail>> {\n return this.http.post<AppDetail>(\"/app/create\", params);\n }\n\n getBySlug(\n params: GetAppBySlugParams\n ): Promise<ApiSuccessResponse<AppDetail>> {\n const { slug, ...body } = params;\n return this.http.post<AppDetail>(`/app/get/${slug}`, body);\n }\n\n getById(params: GetAppByIdParams): Promise<ApiSuccessResponse<AppDetail>> {\n const { appId, ...body } = params;\n return this.http.post<AppDetail>(`/app/${appId}`, body);\n }\n\n update(params: UpdateAppParams): Promise<ApiSuccessResponse<AppDetail>> {\n const { appId, ...body } = params;\n return this.http.post<AppDetail>(`/app/${appId}/update`, body);\n }\n\n updateModules(params: UpdateAppModulesParams): Promise<ApiSuccessResponse<AppDetail>> {\n const { appId, ...body } = params;\n return this.http.post<AppDetail>(`/app/${appId}/modules`, body);\n }\n\n toggleModule(params: ToggleModuleParams): Promise<ApiSuccessResponse<ToggleModuleResponse>> {\n const { appId, ...body } = params;\n return this.http.post<ToggleModuleResponse>(`/app/${appId}/modules/toggle`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n Statistic,\n GetStatisticParams,\n CreateStatisticParams,\n UpdateStatisticParams,\n} from \"@/types/app/stats\";\n\nexport class StatsApi {\n constructor(private readonly http: HttpClient) {}\n\n create(params: CreateStatisticParams): Promise<ApiSuccessResponse<Statistic>> {\n const { appId, ...body } = params;\n return this.http.post<Statistic>(`/app/${appId}/stats/create`, body);\n }\n\n get(params: GetStatisticParams): Promise<ApiSuccessResponse<number>> {\n const { appId, ...body } = params;\n return this.http.post<number>(`/app/${appId}/stats/get`, body);\n }\n\n set(params: CreateStatisticParams): Promise<ApiSuccessResponse<Statistic>> {\n const { appId, ...body } = params;\n return this.http.post<Statistic>(`/app/${appId}/stats/set`, body);\n }\n\n update(params: UpdateStatisticParams): Promise<ApiSuccessResponse<Statistic>> {\n const { appId, id, ...body } = params;\n return this.http.post<Statistic>(`/app/${appId}/stats/${id}/update`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n BalanceParams,\n TransactionListParams,\n TransactionGetParams,\n WithdrawParams,\n Transaction,\n TransactionDetail,\n WithdrawResult,\n} from \"@/types/app/finance\";\n\nexport class FinanceApi {\n constructor(private readonly http: HttpClient) {}\n\n balance(params: BalanceParams): Promise<ApiSuccessResponse<number | null>> {\n const { appId, ...body } = params;\n return this.http.post<number | null>(`/app/${appId}/balance`, body);\n }\n\n listTransactions(\n params: TransactionListParams\n ): Promise<ApiSuccessResponse<Transaction[]>> {\n const { appId, ...body } = params;\n return this.http.post<Transaction[]>(`/app/${appId}/transaction/list`, body);\n }\n\n getTransaction(\n params: TransactionGetParams\n ): Promise<ApiSuccessResponse<TransactionDetail | null>> {\n const { appId, id, ...body } = params;\n return this.http.post<TransactionDetail | null>(`/app/${appId}/transaction/${id}`, body);\n }\n\n withdraw(params: WithdrawParams): Promise<ApiSuccessResponse<WithdrawResult>> {\n const { appId, ...body } = params;\n return this.http.post<WithdrawResult>(`/app/${appId}/withdraw`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n WelcomeItem,\n ListWelcomeItemsParams,\n CreateWelcomeItemParams,\n UpdateWelcomeItemParams,\n GetWelcomeItemParams,\n DeleteWelcomeItemParams,\n} from \"@/types/app/welcome-item\";\n\nexport class WelcomeItemApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListWelcomeItemsParams): Promise<ApiSuccessResponse<WelcomeItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<WelcomeItem[]>(`/app/${appId}/welcome-item/list`, body);\n }\n\n create(params: CreateWelcomeItemParams): Promise<ApiSuccessResponse<WelcomeItem>> {\n const { appId, ...body } = params;\n return this.http.post<WelcomeItem>(`/app/${appId}/welcome-item/create`, body);\n }\n\n get(params: GetWelcomeItemParams): Promise<ApiSuccessResponse<WelcomeItem | null>> {\n const { appId, id, ...body } = params;\n return this.http.post<WelcomeItem | null>(`/app/${appId}/welcome-item/${id}`, body);\n }\n\n update(params: UpdateWelcomeItemParams): Promise<ApiSuccessResponse<WelcomeItem>> {\n const { appId, id, ...body } = params;\n return this.http.post<WelcomeItem>(`/app/${appId}/welcome-item/${id}/edit`, body);\n }\n\n delete(params: DeleteWelcomeItemParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/welcome-item/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n Address,\n AddressListParams,\n CreateAddressParams,\n UpdateAddressParams,\n AddressDeleteParams,\n GetAddressByIdParams,\n} from \"@/types/address\";\n\nexport class AddressApi {\n constructor(private readonly http: HttpClient) {}\n\n async list(params: AddressListParams): Promise<ApiSuccessResponse<Address[]>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<Address[]>(`/app/${appId}/address/list`, {\n apiKey,\n ...rest,\n });\n }\n\n async create(params: CreateAddressParams): Promise<ApiSuccessResponse<Address>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<Address>(`/app/${appId}/address/create`, {\n apiKey,\n ...rest,\n });\n }\n\n async update(params: UpdateAddressParams): Promise<ApiSuccessResponse<Address>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<Address>(`/app/${appId}/address/${id}/edit`, {\n apiKey,\n ...rest,\n });\n }\n\n async delete(\n params: AddressDeleteParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, id } = params;\n return this.http.post<{ deleted: boolean }>(\n `/app/${appId}/address/${id}/delete`,\n { apiKey }\n );\n }\n\n async getById(params: GetAddressByIdParams): Promise<ApiSuccessResponse<Address>> {\n const { appId, apiKey, id } = params;\n return this.http.post<Address>(`/app/${appId}/address/${id}`, { apiKey });\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n NotificationToken,\n RemoveTokenResponse,\n RemoveAllTokensResponse,\n SetNotificationTokenParams,\n RemoveNotificationTokenParams,\n RemoveAllNotificationTokensParams,\n ListNotificationTokensParams,\n} from \"@/types/notification-token\";\n\nexport class NotificationTokenApi {\n constructor(private readonly http: HttpClient) {}\n\n async set(\n params: SetNotificationTokenParams\n ): Promise<ApiSuccessResponse<NotificationToken>> {\n const { appId, apiKey, customerId, ...rest } = params;\n return this.http.post<NotificationToken>(\n `/app/${appId}/customer/${customerId}/notification-token/set`,\n { apiKey, ...rest }\n );\n }\n\n async remove(\n params: RemoveNotificationTokenParams\n ): Promise<ApiSuccessResponse<RemoveTokenResponse>> {\n const { appId, apiKey, customerId, token } = params;\n return this.http.post<RemoveTokenResponse>(\n `/app/${appId}/customer/${customerId}/notification-token/remove`,\n { apiKey, token }\n );\n }\n\n async removeAll(\n params: RemoveAllNotificationTokensParams\n ): Promise<ApiSuccessResponse<RemoveAllTokensResponse>> {\n const { appId, apiKey, customerId } = params;\n return this.http.post<RemoveAllTokensResponse>(\n `/app/${appId}/customer/${customerId}/notification-token/remove-all`,\n { apiKey }\n );\n }\n\n async list(\n params: ListNotificationTokensParams\n ): Promise<ApiSuccessResponse<NotificationToken[]>> {\n const { appId, apiKey, customerId } = params;\n return this.http.post<NotificationToken[]>(\n `/app/${appId}/customer/${customerId}/notification-token/list`,\n { apiKey }\n );\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n DeleteFirebaseConfigParams,\n DeleteNotificationTemplateParams,\n FirebaseConfig,\n GetFirebaseConfigParams,\n GetNotificationLogsParams,\n GetNotificationTemplatesParams,\n NotificationLog,\n NotificationLogsResponse,\n NotificationTemplate,\n SetFirebaseConfigParams,\n SetNotificationTemplateParams,\n} from \"@/types/notification\";\n\nexport class NotificationApi {\n constructor(private readonly http: HttpClient) {}\n\n getFirebaseConfig(\n params: GetFirebaseConfigParams\n ): Promise<ApiSuccessResponse<FirebaseConfig | null>> {\n return this.http.post<FirebaseConfig | null>(\n \"/notification/firebase-config\",\n params\n );\n }\n\n setFirebaseConfig(\n params: SetFirebaseConfigParams\n ): Promise<ApiSuccessResponse<FirebaseConfig>> {\n return this.http.post<FirebaseConfig>(\n \"/notification/firebase-config/set\",\n params\n );\n }\n\n deleteFirebaseConfig(\n params: DeleteFirebaseConfigParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\n \"/notification/firebase-config/delete\",\n params\n );\n }\n\n getTemplates(\n params: GetNotificationTemplatesParams\n ): Promise<ApiSuccessResponse<NotificationTemplate[]>> {\n return this.http.post<NotificationTemplate[]>(\"/notification/template\", params);\n }\n\n setTemplate(\n params: SetNotificationTemplateParams\n ): Promise<ApiSuccessResponse<NotificationTemplate>> {\n return this.http.post<NotificationTemplate>(\n \"/notification/template/set\",\n params\n );\n }\n\n deleteTemplate(\n params: DeleteNotificationTemplateParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/notification/template/delete\", params);\n }\n\n async getLogs(\n params: GetNotificationLogsParams\n ): Promise<ApiSuccessResponse<NotificationLogsResponse>> {\n const response = await this.http.post<NotificationLogsResponse | NotificationLog[]>(\n \"/notification/logs\",\n params\n );\n\n if (Array.isArray(response.data)) {\n return {\n ...response,\n data: {\n logs: response.data,\n total: response.data.length,\n limit: response.data.length,\n offset: 0,\n hasMore: false,\n },\n };\n }\n\n return response as ApiSuccessResponse<NotificationLogsResponse>;\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n DeleteWebhookParams,\n GetWebhookLogsParams,\n SetWebhookParams,\n Webhook,\n WebhookLogsResponse,\n} from \"@/types/webhook\";\nimport type { AppScopedParams } from \"@/types/common\";\n\nexport class WebhookApi {\n constructor(private readonly http: HttpClient) {}\n\n set(params: SetWebhookParams): Promise<ApiSuccessResponse<Webhook>> {\n return this.http.post<Webhook>(\"/webhook/set\", params);\n }\n\n list(params: AppScopedParams): Promise<ApiSuccessResponse<Webhook[]>> {\n return this.http.post<Webhook[]>(\"/webhook\", params);\n }\n\n delete(params: DeleteWebhookParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/webhook/delete\", params);\n }\n\n getLogs(params: GetWebhookLogsParams): Promise<ApiSuccessResponse<WebhookLogsResponse>> {\n return this.http.post<WebhookLogsResponse>(\"/webhook/logs\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n User,\n UserDeleteParams,\n UserEditCredentialsParams,\n UserGetParams,\n UserSetNotificationParams,\n UserSigninParams,\n UserSignupParams,\n UserUpdateParams,\n UserVerifyPasswordParams,\n} from \"@/types/user\";\n\nexport class UserApi {\n constructor(private readonly http: HttpClient) {}\n\n signup(params: UserSignupParams): Promise<ApiSuccessResponse<User>> {\n return this.http.post<User>(\"/user/signup\", {\n nom_de_famille: params.nomDeFamille,\n prenom: params.prenom,\n email: params.email,\n telephone: params.telephone,\n password: params.password,\n confirm: params.confirm,\n });\n }\n\n signin(params: UserSigninParams): Promise<ApiSuccessResponse<User>> {\n return this.http.post<User>(\"/user/signin\", params);\n }\n\n get(params: UserGetParams): Promise<ApiSuccessResponse<User | null>> {\n const { id, ...body } = params;\n return this.http.post<User | null>(`/user/${id}`, body);\n }\n\n update(params: UserUpdateParams): Promise<ApiSuccessResponse<User>> {\n const { id, nomDeFamille, ...rest } = params;\n return this.http.post<User>(`/user/${id}/update`, {\n ...rest,\n nom_de_famille: nomDeFamille,\n });\n }\n\n delete(params: UserDeleteParams): Promise<ApiSuccessResponse<unknown>> {\n const { id, ...body } = params;\n return this.http.post<unknown>(`/user/${id}/delete`, body);\n }\n\n editCredentials(\n params: UserEditCredentialsParams\n ): Promise<ApiSuccessResponse<User>> {\n const { id, ...body } = params;\n return this.http.post<User>(`/user/${id}/edit-cred`, body);\n }\n\n verifyPassword(\n params: UserVerifyPasswordParams\n ): Promise<ApiSuccessResponse<boolean>> {\n const { id, ...body } = params;\n return this.http.post<boolean>(`/user/${id}/verify-pass`, body);\n }\n\n setNotification(\n params: UserSetNotificationParams\n ): Promise<ApiSuccessResponse<User>> {\n const { id, ...body } = params;\n return this.http.post<User>(`/user/${id}/set-notification`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n Testimony,\n PublicTestimony,\n CreateTestimonyParams,\n EditTestimonyParams,\n UpdateTestimonyStatusParams,\n ListTestimoniesParams,\n GetTestimonyByIdParams,\n DeleteTestimonyParams,\n CustomerSubmitTestimonyParams,\n PublicListTestimoniesParams,\n PaginationMeta,\n} from \"@/types\";\n\nexport interface TestimonyListResponse {\n testimonies: Testimony[];\n pagination: PaginationMeta;\n}\n\nexport class TestimonyApi {\n constructor(private readonly http: HttpClient) {}\n\n /**\n * Admin: Create a new testimony\n */\n async create(params: CreateTestimonyParams): Promise<ApiSuccessResponse<Testimony>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<Testimony>(`/app/${appId}/testimony/create`, {\n apiKey,\n ...rest,\n });\n }\n\n /**\n * Admin: List testimonies with filters and pagination\n */\n async list(\n params: ListTestimoniesParams\n ): Promise<ApiSuccessResponse<TestimonyListResponse>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<TestimonyListResponse>(`/app/${appId}/testimony/list`, {\n apiKey,\n ...rest,\n });\n }\n\n /**\n * Admin: Get a single testimony by ID\n */\n async getById(params: GetTestimonyByIdParams): Promise<ApiSuccessResponse<Testimony>> {\n const { appId, apiKey, id } = params;\n return this.http.post<Testimony>(`/app/${appId}/testimony/${id}`, { apiKey });\n }\n\n /**\n * Admin: Update a testimony\n */\n async update(params: EditTestimonyParams): Promise<ApiSuccessResponse<Testimony>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<Testimony>(`/app/${appId}/testimony/${id}/edit`, {\n apiKey,\n ...rest,\n });\n }\n\n /**\n * Admin: Delete a testimony\n */\n async delete(\n params: DeleteTestimonyParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, id } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/testimony/${id}/delete`, {\n apiKey,\n });\n }\n\n /**\n * Admin: Update testimony status (approve/reject)\n */\n async updateStatus(\n params: UpdateTestimonyStatusParams\n ): Promise<ApiSuccessResponse<Testimony>> {\n const { appId, apiKey, id, status } = params;\n return this.http.post<Testimony>(`/app/${appId}/testimony/${id}/status`, {\n apiKey,\n status,\n });\n }\n\n /**\n * Customer: Submit a new testimony (status will be PENDING)\n */\n async submit(\n params: CustomerSubmitTestimonyParams\n ): Promise<ApiSuccessResponse<Testimony>> {\n const { appApiKey, ...rest } = params;\n // Extract appId from appApiKey or use a dedicated endpoint\n return this.http.post<Testimony>(`/testimony/submit`, {\n appApiKey,\n ...rest,\n });\n }\n\n /**\n * Public: List approved testimonies\n */\n async listPublic(\n params: PublicListTestimoniesParams\n ): Promise<ApiSuccessResponse<PublicTestimony[]>> {\n return this.http.post<PublicTestimony[]>(`/testimony/public`, params);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreBadgeListItem,\n StoreBadgeDetail,\n CreateBadgeParams,\n UpdateBadgeParams,\n DeleteBadgeParams,\n GetBadgeParams,\n ListBadgesParams,\n} from \"@/types/store/badge\";\n\nexport class BadgeApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListBadgesParams): Promise<ApiSuccessResponse<StoreBadgeListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreBadgeListItem[]>(`/app/${appId}/store/badge/list`, body);\n }\n\n create(params: CreateBadgeParams): Promise<ApiSuccessResponse<StoreBadgeDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreBadgeDetail>(`/app/${appId}/store/badge/create`, body);\n }\n\n get(params: GetBadgeParams): Promise<ApiSuccessResponse<StoreBadgeDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreBadgeDetail>(`/app/${appId}/store/badge/${id}`, body);\n }\n\n update(params: UpdateBadgeParams): Promise<ApiSuccessResponse<StoreBadgeDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreBadgeDetail>(`/app/${appId}/store/badge/${id}/edit`, body);\n }\n\n delete(params: DeleteBadgeParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/badge/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreCart,\n CartTotals,\n CreateCartParams,\n GetCartParams,\n AddCartItemParams,\n UpdateCartItemParams,\n RemoveCartItemParams,\n CalculateCartTotalsParams,\n} from \"@/types/store/cart\";\n\nexport class CartApi {\n constructor(private readonly http: HttpClient) {}\n\n create(params: CreateCartParams): Promise<ApiSuccessResponse<StoreCart>> {\n const { appId, ...body } = params;\n return this.http.post<StoreCart>(`/app/${appId}/store/cart/create`, body);\n }\n\n get(params: GetCartParams): Promise<ApiSuccessResponse<StoreCart>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCart>(`/app/${appId}/store/cart/${id}`, body);\n }\n\n addItem(params: AddCartItemParams): Promise<ApiSuccessResponse<StoreCart>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCart>(`/app/${appId}/store/cart/${id}/add-item`, body);\n }\n\n updateItem(params: UpdateCartItemParams): Promise<ApiSuccessResponse<StoreCart>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCart>(`/app/${appId}/store/cart/${id}/update-item`, body);\n }\n\n removeItem(params: RemoveCartItemParams): Promise<ApiSuccessResponse<StoreCart>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCart>(`/app/${appId}/store/cart/${id}/remove-item`, body);\n }\n\n calculateTotals(params: CalculateCartTotalsParams): Promise<ApiSuccessResponse<CartTotals>> {\n const { appId, id, ...body } = params;\n return this.http.post<CartTotals>(`/app/${appId}/store/cart/${id}/calculate-totals`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreCategoryListItem,\n StoreCategoryDetail,\n CreateCategoryParams,\n UpdateCategoryParams,\n DeleteCategoryParams,\n GetCategoryParams,\n ListCategoriesParams,\n} from \"@/types/store/category\";\n\nexport class CategoryApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListCategoriesParams): Promise<ApiSuccessResponseWithMeta<StoreCategoryListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/category/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreCategoryListItem>>;\n }\n\n create(params: CreateCategoryParams): Promise<ApiSuccessResponse<StoreCategoryDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreCategoryDetail>(`/app/${appId}/store/category/create`, body);\n }\n\n get(params: GetCategoryParams): Promise<ApiSuccessResponse<StoreCategoryDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCategoryDetail>(`/app/${appId}/store/category/${id}`, body);\n }\n\n update(params: UpdateCategoryParams): Promise<ApiSuccessResponse<StoreCategoryDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCategoryDetail>(`/app/${appId}/store/category/${id}/edit`, body);\n }\n\n delete(params: DeleteCategoryParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/category/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreCollectionListItem,\n StoreCollectionDetail,\n CreateCollectionParams,\n UpdateCollectionParams,\n DeleteCollectionParams,\n GetCollectionParams,\n ListCollectionsParams,\n} from \"@/types/store/collection\";\n\nexport class CollectionApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListCollectionsParams): Promise<ApiSuccessResponseWithMeta<StoreCollectionListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/collection/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreCollectionListItem>>;\n }\n\n create(params: CreateCollectionParams): Promise<ApiSuccessResponse<StoreCollectionDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreCollectionDetail>(`/app/${appId}/store/collection/create`, body);\n }\n\n get(params: GetCollectionParams): Promise<ApiSuccessResponse<StoreCollectionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCollectionDetail>(`/app/${appId}/store/collection/${id}`, body);\n }\n\n update(params: UpdateCollectionParams): Promise<ApiSuccessResponse<StoreCollectionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreCollectionDetail>(`/app/${appId}/store/collection/${id}/edit`, body);\n }\n\n delete(params: DeleteCollectionParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/collection/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreDiscountListItem,\n StoreDiscountDetail,\n CreateDiscountParams,\n UpdateDiscountParams,\n DeleteDiscountParams,\n GetDiscountParams,\n ListDiscountsParams,\n} from \"@/types/store/discount\";\n\nexport class DiscountApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListDiscountsParams): Promise<ApiSuccessResponseWithMeta<StoreDiscountListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/discount/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreDiscountListItem>>;\n }\n\n create(params: CreateDiscountParams): Promise<ApiSuccessResponse<StoreDiscountDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreDiscountDetail>(`/app/${appId}/store/discount/create`, body);\n }\n\n get(params: GetDiscountParams): Promise<ApiSuccessResponse<StoreDiscountDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreDiscountDetail>(`/app/${appId}/store/discount/${id}`, body);\n }\n\n update(params: UpdateDiscountParams): Promise<ApiSuccessResponse<StoreDiscountDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreDiscountDetail>(`/app/${appId}/store/discount/${id}/edit`, body);\n }\n\n delete(params: DeleteDiscountParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/discount/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreOptionListItem,\n StoreOptionDetail,\n CreateOptionParams,\n UpdateOptionParams,\n DeleteOptionParams,\n GetOptionParams,\n ListOptionsParams,\n} from \"@/types/store/option\";\n\nexport class OptionApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListOptionsParams): Promise<ApiSuccessResponse<StoreOptionListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreOptionListItem[]>(`/app/${appId}/store/option/list`, body);\n }\n\n create(params: CreateOptionParams): Promise<ApiSuccessResponse<StoreOptionDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreOptionDetail>(`/app/${appId}/store/option/create`, body);\n }\n\n get(params: GetOptionParams): Promise<ApiSuccessResponse<StoreOptionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOptionDetail>(`/app/${appId}/store/option/${id}`, body);\n }\n\n update(params: UpdateOptionParams): Promise<ApiSuccessResponse<StoreOptionDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOptionDetail>(`/app/${appId}/store/option/${id}/edit`, body);\n }\n\n delete(params: DeleteOptionParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/option/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreOrderListItem,\n StoreOrderDetail,\n CreateOrderParams,\n UpdateOrderParams,\n DeleteOrderParams,\n GetOrderParams,\n ListOrdersParams,\n} from \"@/types/store/order\";\n\nexport class OrderApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListOrdersParams): Promise<ApiSuccessResponseWithMeta<StoreOrderListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/order/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreOrderListItem>>;\n }\n\n create(params: CreateOrderParams): Promise<ApiSuccessResponse<StoreOrderDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreOrderDetail>(`/app/${appId}/store/order/create`, body);\n }\n\n get(params: GetOrderParams): Promise<ApiSuccessResponse<StoreOrderDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOrderDetail>(`/app/${appId}/store/order/${id}`, body);\n }\n\n update(params: UpdateOrderParams): Promise<ApiSuccessResponse<StoreOrderDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreOrderDetail>(`/app/${appId}/store/order/${id}/edit`, body);\n }\n\n delete(params: DeleteOrderParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/order/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreProductListItem,\n StoreProductDetail,\n CreateProductParams,\n UpdateProductParams,\n DeleteProductParams,\n GetProductParams,\n ListProductsParams,\n} from \"@/types/store/product\";\n\nexport class ProductApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListProductsParams): Promise<ApiSuccessResponseWithMeta<StoreProductListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/product/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreProductListItem>>;\n }\n\n create(params: CreateProductParams): Promise<ApiSuccessResponse<StoreProductDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreProductDetail>(`/app/${appId}/store/product/create`, body);\n }\n\n get(params: GetProductParams): Promise<ApiSuccessResponse<StoreProductDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreProductDetail>(`/app/${appId}/store/product/${id}`, body);\n }\n\n update(params: UpdateProductParams): Promise<ApiSuccessResponse<StoreProductDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreProductDetail>(`/app/${appId}/store/product/${id}/edit`, body);\n }\n\n delete(params: DeleteProductParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/product/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreSellerListItem,\n StoreSellerDetail,\n CreateSellerParams,\n UpdateSellerParams,\n DeleteSellerParams,\n GetSellerParams,\n ListSellersParams,\n} from \"@/types/store/seller\";\n\nexport class SellerApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListSellersParams): Promise<ApiSuccessResponse<StoreSellerListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreSellerListItem[]>(`/app/${appId}/store/seller/list`, body);\n }\n\n create(params: CreateSellerParams): Promise<ApiSuccessResponse<StoreSellerDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreSellerDetail>(`/app/${appId}/store/seller/create`, body);\n }\n\n get(params: GetSellerParams): Promise<ApiSuccessResponse<StoreSellerDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreSellerDetail>(`/app/${appId}/store/seller/${id}`, body);\n }\n\n update(params: UpdateSellerParams): Promise<ApiSuccessResponse<StoreSellerDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreSellerDetail>(`/app/${appId}/store/seller/${id}/edit`, body);\n }\n\n delete(params: DeleteSellerParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/seller/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreShippingProfileListItem,\n StoreShippingProfileDetail,\n CreateShippingProfileParams,\n UpdateShippingProfileParams,\n DeleteShippingProfileParams,\n GetShippingProfileParams,\n ListShippingProfilesParams,\n} from \"@/types/store/shipping\";\n\nexport class ShippingApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListShippingProfilesParams): Promise<ApiSuccessResponse<StoreShippingProfileListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreShippingProfileListItem[]>(`/app/${appId}/store/shipping/list`, body);\n }\n\n create(params: CreateShippingProfileParams): Promise<ApiSuccessResponse<StoreShippingProfileDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreShippingProfileDetail>(`/app/${appId}/store/shipping/create`, body);\n }\n\n get(params: GetShippingProfileParams): Promise<ApiSuccessResponse<StoreShippingProfileDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreShippingProfileDetail>(`/app/${appId}/store/shipping/${id}`, body);\n }\n\n update(params: UpdateShippingProfileParams): Promise<ApiSuccessResponse<StoreShippingProfileDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreShippingProfileDetail>(`/app/${appId}/store/shipping/${id}/edit`, body);\n }\n\n delete(params: DeleteShippingProfileParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/shipping/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse, ApiSuccessResponseWithMeta } from \"@/http\";\nimport type {\n StoreTagListItem,\n StoreTagDetail,\n CreateTagParams,\n UpdateTagParams,\n DeleteTagParams,\n GetTagParams,\n ListTagsParams,\n} from \"@/types/store/tag\";\n\nexport class TagApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListTagsParams): Promise<ApiSuccessResponseWithMeta<StoreTagListItem>> {\n const { appId, ...body } = params;\n return this.http.post(`/app/${appId}/store/tag/list`, body) as Promise<ApiSuccessResponseWithMeta<StoreTagListItem>>;\n }\n\n create(params: CreateTagParams): Promise<ApiSuccessResponse<StoreTagDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreTagDetail>(`/app/${appId}/store/tag/create`, body);\n }\n\n get(params: GetTagParams): Promise<ApiSuccessResponse<StoreTagDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTagDetail>(`/app/${appId}/store/tag/${id}`, body);\n }\n\n update(params: UpdateTagParams): Promise<ApiSuccessResponse<StoreTagDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTagDetail>(`/app/${appId}/store/tag/${id}/edit`, body);\n }\n\n delete(params: DeleteTagParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/tag/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n StoreTaxListItem,\n StoreTaxDetail,\n CreateTaxParams,\n UpdateTaxParams,\n DeleteTaxParams,\n GetTaxParams,\n ListTaxesParams,\n} from \"@/types/store/tax\";\n\nexport class TaxApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListTaxesParams): Promise<ApiSuccessResponse<StoreTaxListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<StoreTaxListItem[]>(`/app/${appId}/store/tax/list`, body);\n }\n\n create(params: CreateTaxParams): Promise<ApiSuccessResponse<StoreTaxDetail>> {\n const { appId, ...body } = params;\n return this.http.post<StoreTaxDetail>(`/app/${appId}/store/tax/create`, body);\n }\n\n get(params: GetTaxParams): Promise<ApiSuccessResponse<StoreTaxDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTaxDetail>(`/app/${appId}/store/tax/${id}`, body);\n }\n\n update(params: UpdateTaxParams): Promise<ApiSuccessResponse<StoreTaxDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<StoreTaxDetail>(`/app/${appId}/store/tax/${id}/edit`, body);\n }\n\n delete(params: DeleteTaxParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/store/tax/${id}/delete`, body);\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { BadgeApi } from \"./badge\";\nimport { CartApi } from \"./cart\";\nimport { CategoryApi } from \"./category\";\nimport { CollectionApi } from \"./collection\";\nimport { DiscountApi } from \"./discount\";\nimport { OptionApi } from \"./option\";\nimport { OrderApi } from \"./order\";\nimport { ProductApi } from \"./product\";\nimport { SellerApi } from \"./seller\";\nimport { ShippingApi } from \"./shipping\";\nimport { TagApi } from \"./tag\";\nimport { TaxApi } from \"./tax\";\n\nexport { BadgeApi } from \"./badge\";\nexport { CartApi } from \"./cart\";\nexport { CategoryApi } from \"./category\";\nexport { CollectionApi } from \"./collection\";\nexport { DiscountApi } from \"./discount\";\nexport { OptionApi } from \"./option\";\nexport { OrderApi } from \"./order\";\nexport { ProductApi } from \"./product\";\nexport { SellerApi } from \"./seller\";\nexport { ShippingApi } from \"./shipping\";\nexport { TagApi } from \"./tag\";\nexport { TaxApi } from \"./tax\";\n\nexport class StoreApi {\n readonly badge: BadgeApi;\n readonly cart: CartApi;\n readonly category: CategoryApi;\n readonly collection: CollectionApi;\n readonly discount: DiscountApi;\n readonly option: OptionApi;\n readonly order: OrderApi;\n readonly product: ProductApi;\n readonly seller: SellerApi;\n readonly shipping: ShippingApi;\n readonly tag: TagApi;\n readonly tax: TaxApi;\n\n constructor(private readonly http: HttpClient) {\n this.badge = new BadgeApi(http);\n this.cart = new CartApi(http);\n this.category = new CategoryApi(http);\n this.collection = new CollectionApi(http);\n this.discount = new DiscountApi(http);\n this.option = new OptionApi(http);\n this.order = new OrderApi(http);\n this.product = new ProductApi(http);\n this.seller = new SellerApi(http);\n this.shipping = new ShippingApi(http);\n this.tag = new TagApi(http);\n this.tax = new TaxApi(http);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceAgentListItem,\n MultiServiceAgentDetail,\n CreateAgentParams,\n UpdateAgentParams,\n DeleteAgentParams,\n GetAgentParams,\n ListAgentsParams,\n} from \"@/types/multi-service/agent\";\n\nexport class AgentApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListAgentsParams): Promise<ApiSuccessResponse<MultiServiceAgentListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAgentListItem[]>(`/app/${appId}/multi-service/agents/list`, body);\n }\n\n create(params: CreateAgentParams): Promise<ApiSuccessResponse<MultiServiceAgentDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAgentDetail>(`/app/${appId}/multi-service/agents/create`, body);\n }\n\n get(params: GetAgentParams): Promise<ApiSuccessResponse<MultiServiceAgentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAgentDetail>(`/app/${appId}/multi-service/agents/${id}`, body);\n }\n\n update(params: UpdateAgentParams): Promise<ApiSuccessResponse<MultiServiceAgentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAgentDetail>(`/app/${appId}/multi-service/agents/${id}/edit`, body);\n }\n\n delete(params: DeleteAgentParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/multi-service/agents/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceAppointmentListItem,\n MultiServiceAppointmentDetail,\n CreateAppointmentParams,\n UpdateAppointmentStatusParams,\n UpdateAppointmentAgentParams,\n GetAppointmentParams,\n ListAppointmentsParams,\n} from \"@/types/multi-service/appointment\";\n\nexport class AppointmentApi {\n constructor(private readonly http: HttpClient) {}\n\n create(params: CreateAppointmentParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(`/app/${appId}/multi-service/appointments/create`, body);\n }\n\n list(params: ListAppointmentsParams): Promise<ApiSuccessResponse<MultiServiceAppointmentListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceAppointmentListItem[]>(`/app/${appId}/multi-service/appointments/list`, body);\n }\n\n updateStatus(params: UpdateAppointmentStatusParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(\n `/app/${appId}/multi-service/appointments/${id}/status`,\n body\n );\n }\n\n get(params: GetAppointmentParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(\n `/app/${appId}/multi-service/appointments/${id}`,\n body\n );\n }\n\n assignAgent(params: UpdateAppointmentAgentParams): Promise<ApiSuccessResponse<MultiServiceAppointmentDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceAppointmentDetail>(\n `/app/${appId}/multi-service/appointments/${id}/assign-agent`,\n body\n );\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceCompanyListItem,\n MultiServiceCompanyDetail,\n CreateCompanyParams,\n UpdateCompanyParams,\n DeleteCompanyParams,\n GetCompanyParams,\n ListCompaniesParams,\n} from \"@/types/multi-service/company\";\n\nexport class CompanyApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListCompaniesParams): Promise<ApiSuccessResponse<MultiServiceCompanyListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceCompanyListItem[]>(`/app/${appId}/multi-service/companies/list`, body);\n }\n\n create(params: CreateCompanyParams): Promise<ApiSuccessResponse<MultiServiceCompanyDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceCompanyDetail>(`/app/${appId}/multi-service/companies/create`, body);\n }\n\n get(params: GetCompanyParams): Promise<ApiSuccessResponse<MultiServiceCompanyDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceCompanyDetail>(`/app/${appId}/multi-service/companies/${id}`, body);\n }\n\n update(params: UpdateCompanyParams): Promise<ApiSuccessResponse<MultiServiceCompanyDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceCompanyDetail>(`/app/${appId}/multi-service/companies/${id}/edit`, body);\n }\n\n delete(params: DeleteCompanyParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/multi-service/companies/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceServiceListItem,\n MultiServiceServiceDetail,\n CreateServiceParams,\n UpdateServiceParams,\n DeleteServiceParams,\n GetServiceParams,\n ListServicesParams,\n} from \"@/types/multi-service/service\";\n\nexport class ServiceApi {\n constructor(private readonly http: HttpClient) {}\n\n list(params: ListServicesParams): Promise<ApiSuccessResponse<MultiServiceServiceListItem[]>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceServiceListItem[]>(`/app/${appId}/multi-service/services/list`, body);\n }\n\n create(params: CreateServiceParams): Promise<ApiSuccessResponse<MultiServiceServiceDetail>> {\n const { appId, ...body } = params;\n return this.http.post<MultiServiceServiceDetail>(`/app/${appId}/multi-service/services/create`, body);\n }\n\n get(params: GetServiceParams): Promise<ApiSuccessResponse<MultiServiceServiceDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceServiceDetail>(`/app/${appId}/multi-service/services/${id}`, body);\n }\n\n update(params: UpdateServiceParams): Promise<ApiSuccessResponse<MultiServiceServiceDetail>> {\n const { appId, id, ...body } = params;\n return this.http.post<MultiServiceServiceDetail>(`/app/${appId}/multi-service/services/${id}/edit`, body);\n }\n\n delete(params: DeleteServiceParams): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, id, ...body } = params;\n return this.http.post<{ deleted: boolean }>(`/app/${appId}/multi-service/services/${id}/delete`, body);\n }\n}\n","import { HttpClient, ApiSuccessResponse } from \"@/http\";\nimport type {\n MultiServiceFieldTemplate,\n ListFieldTemplatesParams,\n CreateFieldTemplateParams,\n UpdateFieldTemplateParams,\n DeleteFieldTemplateParams,\n} from \"@/types/multi-service/field-template\";\n\nexport class FieldTemplateApi {\n constructor(private readonly http: HttpClient) {}\n\n async list(\n params: ListFieldTemplatesParams\n ): Promise<ApiSuccessResponse<MultiServiceFieldTemplate[]>> {\n const { appId, apiKey } = params;\n return this.http.post<MultiServiceFieldTemplate[]>(\n `/app/${appId}/multi-service/fields/list`,\n { apiKey }\n );\n }\n\n async create(\n params: CreateFieldTemplateParams\n ): Promise<ApiSuccessResponse<MultiServiceFieldTemplate>> {\n const { appId, apiKey, ...rest } = params;\n return this.http.post<MultiServiceFieldTemplate>(\n `/app/${appId}/multi-service/fields/create`,\n { apiKey, ...rest }\n );\n }\n\n async update(\n params: UpdateFieldTemplateParams\n ): Promise<ApiSuccessResponse<MultiServiceFieldTemplate>> {\n const { appId, apiKey, id, ...rest } = params;\n return this.http.post<MultiServiceFieldTemplate>(\n `/app/${appId}/multi-service/fields/${id}/edit`,\n { apiKey, ...rest }\n );\n }\n\n async delete(\n params: DeleteFieldTemplateParams\n ): Promise<ApiSuccessResponse<{ deleted: boolean }>> {\n const { appId, apiKey, id } = params;\n return this.http.post<{ deleted: boolean }>(\n `/app/${appId}/multi-service/fields/${id}/delete`,\n { apiKey }\n );\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { AgentApi } from \"./agent\";\nimport { AppointmentApi } from \"./appointment\";\nimport { CompanyApi } from \"./company\";\nimport { ServiceApi } from \"./service\";\nimport { FieldTemplateApi } from \"./field-template\";\n\nexport { AgentApi } from \"./agent\";\nexport { AppointmentApi } from \"./appointment\";\nexport { CompanyApi } from \"./company\";\nexport { ServiceApi } from \"./service\";\nexport { FieldTemplateApi } from \"./field-template\";\n\nexport class MultiServiceApi {\n readonly company: CompanyApi;\n readonly service: ServiceApi;\n readonly appointment: AppointmentApi;\n readonly agent: AgentApi;\n readonly fieldTemplate: FieldTemplateApi;\n\n constructor(private readonly http: HttpClient) {\n this.company = new CompanyApi(http);\n this.service = new ServiceApi(http);\n this.appointment = new AppointmentApi(http);\n this.agent = new AgentApi(http);\n this.fieldTemplate = new FieldTemplateApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { SuperAdminAppListParams, SuperAdminAppListResponse } from \"@/types/super-admin\";\n\nexport class SuperAdminAppsApi {\n constructor(private readonly http: HttpClient) {}\n\n list(\n params: SuperAdminAppListParams\n ): Promise<ApiSuccessResponse<SuperAdminAppListResponse>> {\n return this.http.post<SuperAdminAppListResponse>(\"/super-admin/apps/list\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminInitParams,\n SuperAdminMeParams,\n SuperAdminSigninParams,\n SuperAdminUser,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminAuthApi {\n constructor(private readonly http: HttpClient) {}\n\n init(params: SuperAdminInitParams): Promise<ApiSuccessResponse<SuperAdminUser>> {\n return this.http.post<SuperAdminUser>(\"/super-admin/auth/init\", params);\n }\n\n signin(\n params: SuperAdminSigninParams\n ): Promise<ApiSuccessResponse<SuperAdminUser>> {\n return this.http.post<SuperAdminUser>(\"/super-admin/auth/signin\", params);\n }\n\n me(params: SuperAdminMeParams): Promise<ApiSuccessResponse<SuperAdminUser>> {\n return this.http.post<SuperAdminUser>(\"/super-admin/auth/me\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminTransactionListParams,\n SuperAdminTransactionListResponse,\n SuperAdminWithdrawParams,\n SuperAdminWithdrawResponse,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminFinanceApi {\n constructor(private readonly http: HttpClient) {}\n\n transactions(\n params: SuperAdminTransactionListParams\n ): Promise<ApiSuccessResponse<SuperAdminTransactionListResponse>> {\n return this.http.post<SuperAdminTransactionListResponse>(\n \"/super-admin/finance/transactions\",\n params\n );\n }\n\n withdraw(\n params: SuperAdminWithdrawParams\n ): Promise<ApiSuccessResponse<SuperAdminWithdrawResponse>> {\n return this.http.post<SuperAdminWithdrawResponse>(\n \"/super-admin/finance/withdraw\",\n params\n );\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminModuleUpdateParams,\n SuperAdminModulesListParams,\n SuperAdminPlatformModule,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminModulesApi {\n constructor(private readonly http: HttpClient) {}\n\n list(\n params: SuperAdminModulesListParams\n ): Promise<ApiSuccessResponse<SuperAdminPlatformModule[]>> {\n return this.http.post<SuperAdminPlatformModule[]>(\"/super-admin/modules/list\", params);\n }\n\n update(\n params: SuperAdminModuleUpdateParams\n ): Promise<ApiSuccessResponse<SuperAdminPlatformModule>> {\n return this.http.post<SuperAdminPlatformModule>(\"/super-admin/modules/update\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n SuperAdminNotificationSendParams,\n SuperAdminNotificationSendResponse,\n} from \"@/types/super-admin\";\n\nexport class SuperAdminNotificationApi {\n constructor(private readonly http: HttpClient) {}\n\n send(\n params: SuperAdminNotificationSendParams\n ): Promise<ApiSuccessResponse<SuperAdminNotificationSendResponse>> {\n return this.http.post<SuperAdminNotificationSendResponse>(\n \"/super-admin/notification/send\",\n params\n );\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { SuperAdminStats, SuperAdminStatsParams } from \"@/types/super-admin\";\n\nexport class SuperAdminStatsApi {\n constructor(private readonly http: HttpClient) {}\n\n fetch(params: SuperAdminStatsParams): Promise<ApiSuccessResponse<SuperAdminStats>> {\n return this.http.post<SuperAdminStats>(\"/super-admin/stats\", params);\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { SuperAdminAppsApi } from \"./apps\";\nimport { SuperAdminAuthApi } from \"./auth\";\nimport { SuperAdminFinanceApi } from \"./finance\";\nimport { SuperAdminModulesApi } from \"./modules\";\nimport { SuperAdminNotificationApi } from \"./notification\";\nimport { SuperAdminStatsApi } from \"./stats\";\n\nexport { SuperAdminAppsApi } from \"./apps\";\nexport { SuperAdminAuthApi } from \"./auth\";\nexport { SuperAdminFinanceApi } from \"./finance\";\nexport { SuperAdminModulesApi } from \"./modules\";\nexport { SuperAdminNotificationApi } from \"./notification\";\nexport { SuperAdminStatsApi } from \"./stats\";\n\nexport class SuperAdminApi {\n readonly auth: SuperAdminAuthApi;\n readonly apps: SuperAdminAppsApi;\n readonly modules: SuperAdminModulesApi;\n readonly stats: SuperAdminStatsApi;\n readonly finance: SuperAdminFinanceApi;\n readonly notification: SuperAdminNotificationApi;\n\n constructor(private readonly http: HttpClient) {\n this.auth = new SuperAdminAuthApi(http);\n this.apps = new SuperAdminAppsApi(http);\n this.modules = new SuperAdminModulesApi(http);\n this.stats = new SuperAdminStatsApi(http);\n this.finance = new SuperAdminFinanceApi(http);\n this.notification = new SuperAdminNotificationApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { AppScopedParams } from \"@/types/common\";\n\nexport class DuticotacBalanceApi {\n constructor(private readonly http: HttpClient) {}\n\n get(params: AppScopedParams): Promise<ApiSuccessResponse<number>> {\n return this.http.post<number>(\"/duticotac/balance\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CreateDuticotacOfferParams,\n DuticotacOffer,\n EditDuticotacOfferParams,\n} from \"@/types/duticotac\";\nimport type { AppScopedParams } from \"@/types/common\";\n\nexport class DuticotacOfferApi {\n constructor(private readonly http: HttpClient) {}\n\n create(\n params: CreateDuticotacOfferParams\n ): Promise<ApiSuccessResponse<DuticotacOffer>> {\n return this.http.post<DuticotacOffer>(\"/duticotac/offer/create\", params);\n }\n\n edit(\n params: EditDuticotacOfferParams\n ): Promise<ApiSuccessResponse<DuticotacOffer>> {\n const { ref, ...body } = params;\n return this.http.post<DuticotacOffer>(`/duticotac/offer/${ref}/edit`, body);\n }\n\n delete(ref: string, params: AppScopedParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(`/duticotac/offer/${ref}/delete`, params);\n }\n\n list(params: AppScopedParams): Promise<ApiSuccessResponse<DuticotacOffer[]>> {\n return this.http.post<DuticotacOffer[]>(\"/duticotac/offer/list\", params);\n }\n\n get(ref: string, params: AppScopedParams): Promise<ApiSuccessResponse<DuticotacOffer>> {\n return this.http.post<DuticotacOffer>(`/duticotac/offer/${ref}`, params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CashInParams,\n CashOutParams,\n GetPaymentMethodsParams,\n PaymentMethodSetParams,\n} from \"@/types/duticotac\";\nimport type { TransactionProvider } from \"@/types/common\";\n\nexport class DuticotacPaymentApi {\n constructor(private readonly http: HttpClient) {}\n\n cashIn(params: CashInParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/duticotac/pay/mobile-money/cashin\", params);\n }\n\n cashOut(params: CashOutParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/duticotac/pay/mobile-money/cashout\", params);\n }\n\n setPaymentMethods(\n params: PaymentMethodSetParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/duticotac/payment-method/set\", params);\n }\n\n getPaymentMethods(\n params: GetPaymentMethodsParams\n ): Promise<ApiSuccessResponse<TransactionProvider[]>> {\n return this.http.post<TransactionProvider[]>(\"/duticotac/payment-method\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { DuticotacTransaction, DuticotacTransactionGetParams } from \"@/types/duticotac\";\n\nexport class DuticotacTransactionApi {\n constructor(private readonly http: HttpClient) {}\n\n get(\n params: DuticotacTransactionGetParams\n ): Promise<ApiSuccessResponse<DuticotacTransaction>> {\n return this.http.post<DuticotacTransaction>(\"/duticotac/transaction/get\", params);\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { DuticotacBalanceApi } from \"./balance\";\nimport { DuticotacOfferApi } from \"./offer\";\nimport { DuticotacPaymentApi } from \"./payment\";\nimport { DuticotacTransactionApi } from \"./transaction\";\n\nexport { DuticotacBalanceApi } from \"./balance\";\nexport { DuticotacOfferApi } from \"./offer\";\nexport { DuticotacPaymentApi } from \"./payment\";\nexport { DuticotacTransactionApi } from \"./transaction\";\n\nexport class DuticotacApi {\n readonly balance: DuticotacBalanceApi;\n readonly offer: DuticotacOfferApi;\n readonly payment: DuticotacPaymentApi;\n readonly transaction: DuticotacTransactionApi;\n\n constructor(private readonly http: HttpClient) {\n this.balance = new DuticotacBalanceApi(http);\n this.offer = new DuticotacOfferApi(http);\n this.payment = new DuticotacPaymentApi(http);\n this.transaction = new DuticotacTransactionApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { ApiKeyParams, AppScopedParams } from \"@/types/common\";\nimport type { ConfigureKolaboAppParams, KolaboApp } from \"@/types/kolabo\";\n\nexport class KolaboAppApi {\n constructor(private readonly http: HttpClient) {}\n\n configure(\n slug: string,\n params: ConfigureKolaboAppParams\n ): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}/configure`, params);\n }\n\n join(slug: string, params: AppScopedParams): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}/join`, params);\n }\n\n getBySlug(slug: string, params: ApiKeyParams): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}`, params);\n }\n\n get(slug: string, params: AppScopedParams): Promise<ApiSuccessResponse<KolaboApp>> {\n return this.http.post<KolaboApp>(`/kolabo/app/${slug}/get`, params);\n }\n\n list(params: ApiKeyParams): Promise<ApiSuccessResponse<KolaboApp[]>> {\n return this.http.post<KolaboApp[]>(\"/kolabo/app/list\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CreateKolaboCustomerParams,\n CreateKolaboCustomerPartnershipParams,\n KolaboCustomer,\n} from \"@/types/kolabo\";\n\nexport class KolaboCustomerApi {\n constructor(private readonly http: HttpClient) {}\n\n create(\n params: CreateKolaboCustomerParams\n ): Promise<ApiSuccessResponse<KolaboCustomer>> {\n return this.http.post<KolaboCustomer>(\"/kolabo/customer/create\", params);\n }\n\n createPartnership(\n params: CreateKolaboCustomerPartnershipParams\n ): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(\"/kolabo/customer/create-partnership\", params);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type { ApiKeyParams } from \"@/types/common\";\nimport type {\n AddKolaboAppToPartnerParams,\n CheckKolaboPartnerParams,\n DeleteKolaboPartnerParams,\n EditKolaboPartnerProfileParams,\n GetKolaboPartnerAppsParams,\n GetKolaboPartnerTransactionParams,\n KolaboApp,\n KolaboPartner,\n KolaboPartnerShip,\n KolaboPartnerTransactionDetail,\n KolaboPartnerTransactionListItem,\n KolaboPartnerWithdrawWebhookParams,\n KolaboPartnerWithdrawWebhookTransaction,\n ListKolaboPartnerTransactionsParams,\n SetPinParams,\n SignUpKolaboPartnerParams,\n WithdrawKolaboPartnerParams,\n} from \"@/types/kolabo\";\n\nexport class KolaboPartnerApi {\n constructor(private readonly http: HttpClient) {}\n\n signUp(\n params: SignUpKolaboPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartner>> {\n return this.http.post<KolaboPartner>(\"/kolabo/partner/signup\", params);\n }\n\n check(\n params: CheckKolaboPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartner | null>> {\n return this.http.post<KolaboPartner | null>(\"/kolabo/partner/check\", params);\n }\n\n get(id: string, params: ApiKeyParams): Promise<ApiSuccessResponse<KolaboPartner>> {\n return this.http.post<KolaboPartner>(`/kolabo/partner/${id}`, params);\n }\n\n editProfile(\n id: string,\n params: EditKolaboPartnerProfileParams\n ): Promise<ApiSuccessResponse<KolaboPartner>> {\n return this.http.post<KolaboPartner>(`/kolabo/partner/${id}/edit-profile`, params);\n }\n\n getLink(\n id: string,\n params: AddKolaboAppToPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartnerShip>> {\n return this.http.post<KolaboPartnerShip>(`/kolabo/partner/${id}/get-link`, params);\n }\n\n getPartnership(\n id: string,\n params: AddKolaboAppToPartnerParams\n ): Promise<ApiSuccessResponse<KolaboPartnerShip | null>> {\n return this.http.post<KolaboPartnerShip | null>(\n `/kolabo/partner/${id}/get-partnership`,\n params\n );\n }\n\n setPin(id: string, params: SetPinParams): Promise<ApiSuccessResponse<unknown>> {\n return this.http.post<unknown>(`/kolabo/partner/${id}/set-pin`, params);\n }\n\n cancelPartnership(\n id: string,\n params: AddKolaboAppToPartnerParams\n ): Promise<ApiSuccessResponse<boolean>> {\n return this.http.post<boolean>(`/kolabo/partner/${id}/cancel-partnership`, params);\n }\n\n delete(id: string, params: DeleteKolaboPartnerParams): Promise<ApiSuccessResponse<boolean>> {\n return this.http.post<boolean>(`/kolabo/partner/${id}/delete`, params);\n }\n\n apps(id: string, params: GetKolaboPartnerAppsParams): Promise<ApiSuccessResponse<KolaboApp[]>> {\n return this.http.post<KolaboApp[]>(`/kolabo/partner/${id}/apps`, params);\n }\n\n listTransactions(\n id: string,\n params: ListKolaboPartnerTransactionsParams\n ): Promise<ApiSuccessResponse<KolaboPartnerTransactionListItem[]>> {\n return this.http.post<KolaboPartnerTransactionListItem[]>(\n `/kolabo/partner/${id}/transaction/list`,\n params\n );\n }\n\n transaction(\n id: string,\n params: GetKolaboPartnerTransactionParams\n ): Promise<ApiSuccessResponse<KolaboPartnerTransactionDetail | null>> {\n return this.http.post<KolaboPartnerTransactionDetail | null>(\n `/kolabo/partner/${id}/transaction`,\n params\n );\n }\n\n withdraw(\n id: string,\n params: WithdrawKolaboPartnerParams\n ): Promise<ApiSuccessResponse<boolean>> {\n return this.http.post<boolean>(`/kolabo/partner/${id}/withdraw`, params);\n }\n\n withdrawWebhook(\n id: string,\n params: KolaboPartnerWithdrawWebhookParams\n ): Promise<ApiSuccessResponse<KolaboPartnerWithdrawWebhookTransaction>> {\n return this.http.post<KolaboPartnerWithdrawWebhookTransaction>(\n `/kolabo/partner/${id}/withdraw/webhook`,\n {\n appId: params.appId,\n service_id: params.serviceId,\n gu_transaction_id: params.guTransactionId,\n status: params.status,\n partner_transaction_id: params.partnerTransactionId,\n call_back_url: params.callBackUrl,\n commission: params.commission,\n message: params.message,\n }\n );\n }\n}\n","import { HttpClient } from \"@/http\";\nimport { KolaboAppApi } from \"./app\";\nimport { KolaboCustomerApi } from \"./customer\";\nimport { KolaboPartnerApi } from \"./partner\";\n\nexport { KolaboAppApi } from \"./app\";\nexport { KolaboCustomerApi } from \"./customer\";\nexport { KolaboPartnerApi } from \"./partner\";\n\nexport class KolaboApi {\n readonly app: KolaboAppApi;\n readonly customer: KolaboCustomerApi;\n readonly partner: KolaboPartnerApi;\n\n constructor(private readonly http: HttpClient) {\n this.app = new KolaboAppApi(http);\n this.customer = new KolaboCustomerApi(http);\n this.partner = new KolaboPartnerApi(http);\n }\n}\n","import { ApiSuccessResponse, HttpClient } from \"@/http\";\nimport type {\n CleanupTransactionsParams,\n CleanupTransactionsResult,\n CronBillingParams,\n CronBillingResponse,\n CronNotificationParams,\n CronNotificationResponse,\n} from \"@/types/maintenance\";\n\nexport class MaintenanceApi {\n constructor(private readonly http: HttpClient) {}\n\n cronNotification(\n params: CronNotificationParams = {}\n ): Promise<ApiSuccessResponse<CronNotificationResponse>> {\n return this.http.get<CronNotificationResponse>(\"/cron/notification\", {\n query: params,\n });\n }\n\n cronBilling(params: CronBillingParams): Promise<ApiSuccessResponse<CronBillingResponse>> {\n const { authorizationToken, ...query } = params;\n const headers = authorizationToken\n ? { authorization: `Bearer ${authorizationToken}` }\n : undefined;\n\n return this.http.get<CronBillingResponse>(\"/cron/billing\", {\n query,\n headers,\n });\n }\n\n cleanupTransactions(\n params: CleanupTransactionsParams = {}\n ): Promise<ApiSuccessResponse<CleanupTransactionsResult>> {\n return this.http.get<CleanupTransactionsResult>(\"/cleanup/transactions\", {\n query: params,\n });\n }\n}\n","import { HttpClient, HttpClientConfig } from \"./http\";\nimport {\n CustomerApi,\n InfoApi,\n StatsApi,\n FinanceApi,\n WelcomeItemApi,\n AddressApi,\n NotificationTokenApi,\n NotificationApi,\n WebhookApi,\n UserApi,\n TestimonyApi,\n} from \"./modules/common\";\nimport { StoreApi } from \"./modules/store\";\nimport { MultiServiceApi } from \"./modules/multi-service\";\nimport { SuperAdminApi } from \"./modules/super-admin\";\nimport { DuticotacApi } from \"./modules/duticotac\";\nimport { KolaboApi } from \"./modules/kolabo\";\nimport { MaintenanceApi } from \"./modules/maintenance\";\n\nexport interface AppliteUIConfig extends HttpClientConfig {}\n\nexport class AppliteUI {\n readonly http: HttpClient;\n readonly customer: CustomerApi;\n readonly stats: StatsApi;\n readonly finance: FinanceApi;\n readonly welcomeItem: WelcomeItemApi;\n readonly info: InfoApi;\n readonly address: AddressApi;\n readonly notificationToken: NotificationTokenApi;\n readonly notification: NotificationApi;\n readonly webhook: WebhookApi;\n readonly user: UserApi;\n readonly testimony: TestimonyApi;\n readonly store: StoreApi;\n readonly multiService: MultiServiceApi;\n readonly superAdmin: SuperAdminApi;\n readonly duticotac: DuticotacApi;\n readonly kolabo: KolaboApi;\n readonly maintenance: MaintenanceApi;\n\n constructor(config: AppliteUIConfig = {}) {\n this.http = new HttpClient({\n baseUrl: config.baseUrl,\n headers: config.headers,\n fetchFn: config.fetchFn,\n });\n\n this.customer = new CustomerApi(this.http);\n this.stats = new StatsApi(this.http);\n this.finance = new FinanceApi(this.http);\n this.welcomeItem = new WelcomeItemApi(this.http);\n this.info = new InfoApi(this.http);\n this.address = new AddressApi(this.http);\n this.notificationToken = new NotificationTokenApi(this.http);\n this.notification = new NotificationApi(this.http);\n this.webhook = new WebhookApi(this.http);\n this.user = new UserApi(this.http);\n this.testimony = new TestimonyApi(this.http);\n this.store = new StoreApi(this.http);\n this.multiService = new MultiServiceApi(this.http);\n this.superAdmin = new SuperAdminApi(this.http);\n this.duticotac = new DuticotacApi(this.http);\n this.kolabo = new KolaboApi(this.http);\n this.maintenance = new MaintenanceApi(this.http);\n }\n}\n\nexport * from \"./http\";\nexport * from \"./modules\";\n\n// Export all types\nexport * from \"./types\";\n"]}