@crmcom/self-service-sdk 2.1.2

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.
package/index.d.ts ADDED
@@ -0,0 +1,527 @@
1
+ // CRM.COM SDK Type Definitions
2
+
3
+ // ============================================================================
4
+ // Result Types
5
+ // ============================================================================
6
+
7
+ export interface SDKResult<T = any> {
8
+ code: string;
9
+ data: T;
10
+ }
11
+
12
+ export declare const ErrorCodes: {
13
+ OK: 'OK';
14
+ UNKNOWN: 'UNKNOWN';
15
+ UNCLASSIFIED_ERROR: 'UNCLASSIFIED_ERROR';
16
+ REGISTRATION_FAIL_CONTACT_EXISTS: 'REGISTRATION_FAIL_CONTACT_EXISTS';
17
+ INVALID_LOGIN: 'INVALID_LOGIN';
18
+ ACCOUNT_NOT_FOUND: 'ACCOUNT_NOT_FOUND';
19
+ ADD_ADDRESS_ALREADY_TYPE: 'ADD_ADDRESS_ALREADY_TYPE';
20
+ FORGOT_EMAIL_NOT_FOUND_EXCEPTION: 'FORGOT_EMAIL_NOT_FOUND_EXCEPTION';
21
+ PHONE_NUMBER_ALREADY_EXIST: 'PHONE_NUMBER_ALREADY_EXIST';
22
+ CAN_NOT_FULFILL_ORDER_EXCEPTION: 'CAN_NOT_FULFILL_ORDER_EXCEPTION';
23
+ MINIMUM_ORDER_AMOUNT_NOT_REACHED: 'MINIMUM_ORDER_AMOUNT_NOT_REACHED';
24
+ SIGN_UP_ORGANISATION_ALREADY: 'SIGN_UP_ORGANISATION_ALREADY';
25
+ CONTACTUNIQUELYIDENTIFYEXCEPTION: 'CONTACTUNIQUELYIDENTIFYEXCEPTION';
26
+ NOTFOUNDEXCEPTION: 'NOTFOUNDEXCEPTION';
27
+ EMAIL_NOT_VERIFIED: 'EMAIL_NOT_VERIFIED';
28
+ CARD_ALREADY_EXIT: 'CARD_ALREADY_EXIT';
29
+ CARD_NOT_FOUND: 'CARD_NOT_FOUND';
30
+ INVALID_PASSWORD_EXCEPTION: 'INVALID_PASSWORD_EXCEPTION';
31
+ PASSWORD_LENGTH_EXCEPTION: 'PASSWORD_LENGTH_EXCEPTION';
32
+ PAYMENT_GATEWAY_EXCEPTION: 'PAYMENT_GATEWAY_EXCEPTION';
33
+ CUSTOMER_EMAIL_ALREADY_EXIST: 'CUSTOMER_EMAIL_ALREADY_EXIST';
34
+ TOO_MANY_REQUESTS: 'TOO_MANY_REQUESTS';
35
+ TOO_MANY_RECIPIENTS_EXCEPTION: 'TOO_MANY_RECIPIENTS_EXCEPTION';
36
+ SPEND_AMOUNT_NOT_FULLY_COVERED_EXCEPTION: 'SPEND_AMOUNT_NOT_FULLY_COVERED_EXCEPTION';
37
+ REDEEM_PASS_INVALID: 'REDEEM_PASS_INVALID';
38
+ REDEEM_PASS_NOT_ACTIVE: 'REDEEM_PASS_NOT_ACTIVE';
39
+ REDEEM_PASS_PIN_MANDATORY: 'REDEEM_PASS_PIN_MANDATORY';
40
+ REDEEM_PASS_USED: 'REDEEM_PASS_USED';
41
+ SERVICE_ALREADY_EXIST: 'SERVICE_ALREADY_EXIST';
42
+ CANNOTEXECUTEACTIONCREDITLIMITEXCEPTION: 'CANNOTEXECUTEACTIONCREDITLIMITEXCEPTION';
43
+ CANNOTSPENDAMOUNTWALLETBALANCENOTENOUGHEXCEPTION: 'CANNOTSPENDAMOUNTWALLETBALANCENOTENOUGHEXCEPTION';
44
+ CANNOTUNREGISTERCONTACTEXCEPTION: 'CANNOTUNREGISTERCONTACTEXCEPTION';
45
+ CANNOTEXECUTESUBSCRIPTIONACTIONEXCEPTION: 'CANNOTEXECUTESUBSCRIPTIONACTIONEXCEPTION';
46
+ INVALIDVALUEEXCEPTION: 'INVALIDVALUEEXCEPTION';
47
+ MULTIPLECONTACTSSAMEPHONEEXCEPTION: 'MULTIPLECONTACTSSAMEPHONEEXCEPTION';
48
+ COMMUNITYPARENTCHILDEXCEPTION: 'COMMUNITYPARENTCHILDEXCEPTION';
49
+ CIMALREADYEXISTSFORANOTHERCONTACTEXCEPTION: 'CIMALREADYEXISTSFORANOTHERCONTACTEXCEPTION';
50
+ };
51
+
52
+ export declare function createResult(errorCode: string, data: any): SDKResult;
53
+ export declare function createCommonResult(response: any, requestType?: string): SDKResult;
54
+
55
+ // ============================================================================
56
+ // Logger
57
+ // ============================================================================
58
+
59
+ export declare const logger: {
60
+ setLevel(level: 'none' | 'error' | 'warn' | 'info' | 'debug'): void;
61
+ getLevel(): string;
62
+ debug(...args: any[]): void;
63
+ info(...args: any[]): void;
64
+ warn(...args: any[]): void;
65
+ error(...args: any[]): void;
66
+ };
67
+
68
+ // ============================================================================
69
+ // HTTP Utilities
70
+ // ============================================================================
71
+
72
+ interface SetupChannelOptions {
73
+ storeKVFn: (key: string, value: any) => void | Promise<void>;
74
+ getKVFn: (key: string) => any | Promise<any>;
75
+ sessionInvalidCallback: (shouldLogout: boolean) => void | Promise<void>;
76
+ apiKey: string;
77
+ host: string;
78
+ fetchFn?: typeof fetch;
79
+ sslPinningOptions?: Record<string, any>;
80
+ enableSslPinning?: boolean;
81
+ isBackend?: boolean;
82
+ middlewareHost?: string;
83
+ middlewareApiKey?: string;
84
+ mwNodejsHost?: string;
85
+ mwNodejsApiKey?: string;
86
+ }
87
+
88
+ interface SessionData {
89
+ sub: string;
90
+ current_organisation_id?: string;
91
+ groups?: string[];
92
+ exp: number;
93
+ [key: string]: any;
94
+ }
95
+
96
+ interface HttpRequestOptions {
97
+ resourcePath: string;
98
+ queryParams?: Record<string, any>;
99
+ body?: Record<string, any>;
100
+ withAccessToken?: boolean;
101
+ withoutApikey?: boolean;
102
+ isBackend?: boolean;
103
+ logOutIfSessionInvalid?: boolean;
104
+ isRefreshToken?: boolean;
105
+ accessToken?: string;
106
+ returnText?: boolean;
107
+ returnBlob?: boolean;
108
+ isMiddleware?: boolean;
109
+ isMwNodejs?: boolean;
110
+ plugin?: string;
111
+ unauthorize?: boolean;
112
+ apiKey?: string;
113
+ }
114
+
115
+ interface UploadFileOptions {
116
+ resourcePath: string;
117
+ fileData: any;
118
+ body?: Record<string, any>;
119
+ queryParams?: Record<string, any>;
120
+ withAccessToken?: boolean;
121
+ withoutApikey?: boolean;
122
+ isBackend?: boolean;
123
+ logOutIfSessionInvalid?: boolean;
124
+ accessToken?: string;
125
+ isMiddleware?: boolean;
126
+ method?: string;
127
+ keyParam?: string;
128
+ disalbedContentType?: boolean;
129
+ }
130
+
131
+ export declare const httpUtil: {
132
+ setupChannel(options: SetupChannelOptions): Promise<void>;
133
+ setupApiKey(apiKey: string): Promise<void>;
134
+ post(options: HttpRequestOptions): Promise<SDKResult>;
135
+ get(options: HttpRequestOptions): Promise<SDKResult>;
136
+ put(options: HttpRequestOptions): Promise<SDKResult>;
137
+ sendDelete(options: HttpRequestOptions): Promise<SDKResult>;
138
+ uploadFile(options: UploadFileOptions): Promise<SDKResult>;
139
+ uploadFileNew(options: UploadFileOptions): Promise<SDKResult>;
140
+ is200OK(result: any): boolean;
141
+ startSession(data: { access_token: string; refresh_token: string; exp?: number; communities?: any[] }): void;
142
+ startSessionUnregister(data: { access_token: string; refresh_token: string }): void;
143
+ getSession(): SessionData | undefined;
144
+ getToken(): string | undefined;
145
+ cleanSession(): void;
146
+ switchSession(data: { access_token: string; refresh_token: string; exp?: number; contact: any; initial_contact?: any; communities?: any[] }, isCommunity: boolean): void;
147
+ refreshToken(logOutIfSessionInvalid?: boolean): Promise<any>;
148
+ getURI(isBackend: boolean, resourcePath: string, isMiddleware?: boolean, isMwNodejs?: boolean, plugin?: string): string;
149
+ storeOrganisation(data: { organisations: any[] }): void;
150
+ getOrganisation(): Promise<string | null>;
151
+ cleanObj(obj: Record<string, any>): Record<string, any>;
152
+ };
153
+
154
+ export declare const httpBackOfficeUtil: {
155
+ setupChannel(options: Pick<SetupChannelOptions, 'storeKVFn' | 'getKVFn' | 'sessionInvalidCallback' | 'apiKey' | 'host' | 'fetchFn'>): Promise<void>;
156
+ post(options: HttpRequestOptions): Promise<SDKResult>;
157
+ get(options: HttpRequestOptions): Promise<SDKResult>;
158
+ put(options: HttpRequestOptions): Promise<SDKResult>;
159
+ sendDelete(options: HttpRequestOptions): Promise<SDKResult>;
160
+ is200OK(result: any): boolean;
161
+ startSession(data: { access_token: string; refresh_token: string; exp?: number; organisations?: any[] }): void;
162
+ getSession(): SessionData | undefined;
163
+ cleanSession(): void;
164
+ switchSession(data: { access_token: string; refresh_token: string; exp?: number }, isMerchant: boolean): void;
165
+ cleanObj(obj: Record<string, any>): Record<string, any>;
166
+ };
167
+
168
+ // ============================================================================
169
+ // Authentication
170
+ // ============================================================================
171
+
172
+ export declare const authentication: {
173
+ authenticatePhone(params: { phone_number: string; country_code: string; application_id?: string }, startSession?: boolean): Promise<SDKResult>;
174
+ authenticateEmail(params: { username: string; password: string; application_id?: string }, startSession?: boolean): Promise<SDKResult>;
175
+ authenticateGuest(params: {}, startSession?: boolean): Promise<SDKResult>;
176
+ authenticateFacebook(params: { token: string; application_id?: string }, startSession?: boolean): Promise<SDKResult>;
177
+ authenticateFacebookOIDC(params: { state: string; code: string }, startSession?: boolean): Promise<SDKResult>;
178
+ authenticateSSOOIDC(params: { state: string; code: string }, startSession?: boolean): Promise<SDKResult>;
179
+ sendEmailVerification(email: string): Promise<SDKResult>;
180
+ validateOTP(params: { auth_otp: string; otp: string }, startSession?: boolean): Promise<SDKResult>;
181
+ registerByPhone(params: {
182
+ first_name: string; last_name: string; phone: string; country_code: string;
183
+ referral_code?: string; sms_opt_out?: boolean; email_opt_out?: boolean;
184
+ country_agreement?: string; language_code?: string; custom_fields?: any[];
185
+ accept_term_conditions?: boolean; validation_required?: boolean; pass_code?: string;
186
+ }, startSession?: boolean): Promise<SDKResult>;
187
+ registerByEmail(params: {
188
+ first_name: string; last_name: string; email: string; password: string;
189
+ referral_code?: string; sms_opt_out?: boolean; email_opt_out?: boolean;
190
+ country_agreement?: string; language_code?: string; custom_fields?: any[];
191
+ accept_term_conditions?: boolean; validation_required?: boolean; pass_code?: string;
192
+ }, startSession?: boolean): Promise<SDKResult>;
193
+ registerByFacebook(params: {
194
+ accept_term_conditions?: boolean; application_id?: string;
195
+ sms_opt_out?: boolean; email_opt_out?: boolean; token: string;
196
+ }, startSession?: boolean): Promise<SDKResult>;
197
+ requestOTP(params: { method: string; phone?: string; email?: string; id_number?: string; loyalty_identifier?: string; statutory_id?: string }): Promise<SDKResult>;
198
+ addContactIdentityEmail(params: { email: string; password: string; validation_required?: boolean; contact_id: string; access_token?: string }): Promise<SDKResult>;
199
+ addContactIdentityPhone(params: { phone: string; country_code: string; contact_id: string; access_token?: string }): Promise<SDKResult>;
200
+ forgotPassword(email: string): Promise<SDKResult>;
201
+ contactAuthenticate(type: string, redirectUri: string): Promise<SDKResult>;
202
+ };
203
+
204
+ // ============================================================================
205
+ // Contacts
206
+ // ============================================================================
207
+
208
+ interface PaginationParams {
209
+ page?: number;
210
+ size?: number;
211
+ sort?: string;
212
+ order?: 'ASC' | 'DESC';
213
+ include_total?: boolean;
214
+ }
215
+
216
+ export declare const contacts: {
217
+ getContact(): Promise<SDKResult>;
218
+ updateContact(params: {
219
+ first_name?: string; middle_name?: string; last_name?: string;
220
+ language_code?: string; email?: string; phone?: any;
221
+ gender?: string; date_of_birth?: string; name_day?: string;
222
+ custom_fields?: any[]; statutory_number?: string;
223
+ id_number?: string; id_issuing_country_code?: string; id_expiration_date?: string;
224
+ passport_number?: string; passport_issuing_country_code?: string; passport_expiration_date?: string;
225
+ }): Promise<SDKResult>;
226
+ verifyContactExist(params?: { email_address?: string; phone?: string }): Promise<SDKResult>;
227
+ getContactAddresses(): Promise<SDKResult>;
228
+ addContactAddress(params: {
229
+ type?: string; name?: string; is_primary?: boolean;
230
+ address_line_1?: string; address_line_2?: string;
231
+ state_province_county?: string; town_city?: string;
232
+ postal_code?: string; country_code?: string;
233
+ lat?: number; lon?: number; google_place_id?: string;
234
+ }): Promise<SDKResult>;
235
+ updateContactAddress(params: {
236
+ type?: string; name?: string; is_primary?: boolean;
237
+ address_line_1?: string; address_line_2?: string;
238
+ state_province_county?: string; town_city?: string;
239
+ postal_code?: string; country_code?: string;
240
+ lat?: number; lon?: number; google_place_id?: string;
241
+ }, addressId: string): Promise<SDKResult>;
242
+ updateContactOnboardingCards(params: { viewed?: any }, addId?: string): Promise<SDKResult>;
243
+ deleteContactAddress(addressId: string): Promise<SDKResult>;
244
+ setMarketingPreferences(params?: { sms_opt_out?: boolean; email_opt_out?: boolean; contact_id?: string; access_token?: string }): Promise<SDKResult>;
245
+ submitReferralCode(params: { referral_code: string }): Promise<SDKResult>;
246
+ reclaimPurchase(params: { purchase_id?: string; merchant_tap_code?: string; venue_tap_code?: string; total_amount?: number; transaction_code?: string }, extra: {}): Promise<SDKResult>;
247
+ referFriend(params: { recipients: any[] }, extra: {}): Promise<SDKResult>;
248
+ redeemPass(params: { code: string; contact_id?: string; wallet_id?: string; pin?: string }, extra: {}): Promise<SDKResult>;
249
+ getContactPreferredOrganisation(): Promise<SDKResult>;
250
+ addContactPreferredOrganisation(params?: { organisation_id?: string; type?: string }): Promise<SDKResult>;
251
+ unregisterContact(): Promise<SDKResult>;
252
+ signOutContact(params?: { redirect_url?: string }): Promise<SDKResult>;
253
+ getContactPurchases(params?: PaginationParams & { date?: string; date_gt?: string; date_gte?: string; date_lt?: string; date_lte?: string; is_ad_hoc_returned?: boolean }): Promise<SDKResult>;
254
+ getPurchase(purchaseId: string): Promise<SDKResult>;
255
+ requestOTPSpend(params?: { intent?: string; spend_amount?: number }): Promise<SDKResult>;
256
+ getOTPSpend(params?: { intent?: string; community_id?: string }): Promise<SDKResult>;
257
+ onChangePassword(params: { password: string }): Promise<SDKResult>;
258
+ getNameDayRules(params?: { first_name?: string }): Promise<SDKResult>;
259
+ addApplicationUsage(applicationId: string, platform: string): Promise<SDKResult>;
260
+ requestContactToken(params: { intent?: string; spend_amount?: number; community_id?: string }): Promise<SDKResult>;
261
+ getContactTokens(params?: { intent?: string; community_id?: string }): Promise<SDKResult>;
262
+ addPNDeviceToken(params?: { serial_number?: string; registration_token?: string; mac_address?: string; platform?: string; product_id?: string; application_id?: string; electronic_id?: string }): Promise<SDKResult>;
263
+ deleteDeviceToken(params?: { registration_token?: string }): Promise<SDKResult>;
264
+ uploadProfileImage(params?: { file: any; disalbedContentType?: boolean }): Promise<SDKResult>;
265
+ deleteProfileImage(): Promise<SDKResult>;
266
+ getApplePass(orgId?: string): Promise<SDKResult>;
267
+ getAndroidWalletPass(orgId?: string): Promise<SDKResult>;
268
+ getGooglePass(orgId?: string): Promise<SDKResult>;
269
+ exportStatements(params: { account_id?: string; from_month?: number; to_month?: number; from_year?: number; to_year?: number; format?: string }): Promise<SDKResult>;
270
+ getContactDonationsOffer(params: { contact_id?: string; page?: number; size?: number; include_opt_out?: boolean; include_total?: boolean; order?: string; sort?: string; donation_offer_id?: string }): Promise<SDKResult>;
271
+ getDonationHistory(params: { contact_id?: string; include_total?: boolean; order?: string; organisation_id?: string; page?: number; size?: number; sort?: string }): Promise<SDKResult>;
272
+ donationActions(params: { contact_id?: string; donation_offer_id: string; multiplier?: number; amount?: number }): Promise<SDKResult>;
273
+ updateDonation(params: { contact_id?: string; donation_id: string; donation_offer_id: string; multiplier?: number; amount?: number }): Promise<SDKResult>;
274
+ removeDonation(params: { contact_id?: string; donation_id: string }): Promise<SDKResult>;
275
+ getDonationOffers(params?: PaginationParams & { organisations?: string; owner?: string; search_value?: string; types?: string; donated_to?: string; donation_offer_id?: string; donation_types?: string }): Promise<SDKResult>;
276
+ getDonationOrganisations(params: { include_creatives?: boolean; type?: string }): Promise<SDKResult>;
277
+ };
278
+
279
+ // ============================================================================
280
+ // Orders
281
+ // ============================================================================
282
+
283
+ export declare const orders: {
284
+ getMyOrders(params?: PaginationParams & { custom_fields?: string; include_custom_fields?: boolean; completed_on_gte?: string; completed_on_lte?: string; state?: string; supply_method?: string }): Promise<SDKResult>;
285
+ getOrder(id: string): Promise<SDKResult>;
286
+ getOrderCatalogues(params?: { search_value?: string; fulfilled_by?: string; supply_method?: string; ordering_time?: string; page?: number; size?: number; sort?: string; order?: string }): Promise<SDKResult>;
287
+ getOrderCatalogueCategories(params: { search_value?: string; parent_id?: string; return_all?: boolean; include_total?: boolean; page?: number; size?: number; sort?: string; order?: string }, catalogId: string): Promise<SDKResult>;
288
+ getProductCategories(params?: { available_in_order_menus?: boolean; include_total?: boolean; organisation_id?: string; parent_id?: string; return_all?: boolean; page?: number; size?: number; sort?: string; order?: string }): Promise<SDKResult>;
289
+ getProducts(params?: { product_ids?: string; product_skus?: string; brand_id?: string; category_id?: string; classification?: string; composition?: string; country?: string; currency?: string; custom_fields?: string; family_id?: string; fulfilled_by?: string; include_custom_fields?: boolean; include_total?: boolean; is_modifier?: boolean; name?: string; order_catalog_id?: string; order_category_id?: string; owned_by?: string; search_value?: string; supply_method?: string; type_id?: string; page?: number; size?: number; sort?: string; order?: string }): Promise<SDKResult>;
290
+ getProductsWithFacets(params?: Record<string, any>): Promise<SDKResult>;
291
+ getProduct(id: string, params: { fulfilled_by?: string; supply_method?: string }): Promise<SDKResult>;
292
+ getProductVariants(params: { fulfilled_by?: string; supply_method?: string; include_characteristics?: boolean }, productId: string): Promise<SDKResult>;
293
+ getProductComponents(productId: string, params: { fulfilled_by?: string; supply_method?: string }): Promise<SDKResult>;
294
+ estimateOrderFulfillment(params: { supply_method?: string; postal_code?: string; lat_lot?: any; address_id?: string; requested_delivery_at?: string; requested_organisation_id?: string; is_open?: boolean; country_code?: string; contact_id?: string }): Promise<SDKResult>;
295
+ estimateOrder(params?: { account_id?: string; supply_method?: string; fulfilled_by?: string; requested_delivery_at?: string; address_id?: string; notes?: string; queue_id?: string; use_wallet_funds?: boolean; wallet_funds_amount?: number; payment_method_type?: string; discount?: any; milestones?: any; line_items?: any[]; current_location?: any; estimation_id?: string }): Promise<SDKResult>;
296
+ makeOrder(params: { estimation_id: string; use_wallet_funds?: boolean; wallet_funds_amount?: number; notes?: string; intent_id?: string; use_account_funds?: boolean; account_funds_amount?: number; payments?: any[]; devices?: any[]; custom_fields?: any[]; pass?: any }): Promise<SDKResult>;
297
+ getOrdersRecommendation(params?: { estimation_id?: string; include_creatives?: boolean; include_cross_sells?: boolean; include_upsells?: boolean; include_reward_offers?: boolean; include_promotions?: boolean; order_catalogue_ids?: string }): Promise<SDKResult>;
298
+ getServicesRecommendation(params?: Record<string, any>): Promise<SDKResult>;
299
+ getProductTypes(params?: PaginationParams & { classifications?: string; name?: string; search_value?: string }): Promise<SDKResult>;
300
+ getProductBrands(params?: PaginationParams & { brand_ids?: string; search_value?: string }): Promise<SDKResult>;
301
+ getProductsRecommendation(params?: { contact_id?: string; size?: number; category_type?: string; category_id?: string }): Promise<SDKResult>;
302
+ };
303
+
304
+ // ============================================================================
305
+ // Wallet
306
+ // ============================================================================
307
+
308
+ export declare const wallet: {
309
+ getWallet(walletId?: string): Promise<SDKResult>;
310
+ getWalletId(): Promise<string | null>;
311
+ getWalletCode(walletId?: string): Promise<SDKResult>;
312
+ createCRMWallet(params: { type: string; value: string; country_code?: string }): Promise<SDKResult>;
313
+ requestWalletOtp(params: { type: string; value: string; country_code?: string }): Promise<SDKResult>;
314
+ linkCRMWallet(otp: string): Promise<SDKResult>;
315
+ getWalletConditionsBalances(params?: { page?: number; size?: number; order?: string; sort?: string; commerce_pool_id?: string; include_expiration?: boolean; include_total?: boolean; is_active?: boolean }, walletId?: string): Promise<SDKResult>;
316
+ getWalletTransactions(params?: PaginationParams & { pocket?: string; type?: string; posted_on?: string; posted_on_gt?: string; posted_on_gte?: string; posted_on_lt?: string; posted_on_lte?: string; commerce_pool_id?: string }, walletId?: string): Promise<SDKResult>;
317
+ topupWallet(params: { payment_method_id: string; amount: number; wallet_id?: string; client_secret?: string; commerce_pool_id?: string }): Promise<SDKResult>;
318
+ updateWallet(params?: { auto_topup?: any; termed_topup?: any; wallet_id?: string }): Promise<SDKResult>;
319
+ getWalletTopupSetting(walletId?: string): Promise<SDKResult>;
320
+ getWalletLimit(walletId?: string): Promise<SDKResult>;
321
+ updateWalletLimit(params?: { limit_rules?: any; wallet_id?: string }): Promise<SDKResult>;
322
+ transferMoney(params: { origin_wallet_id: string; destination_wallet_id: string; amount: number; cash_pocket?: string }): Promise<SDKResult>;
323
+ getWalletJounals(params?: PaginationParams & { commerce_pool_id?: string; is_commerce?: boolean; is_open?: boolean; is_wallet_fee?: boolean; posted_on?: string; posted_on_gt?: string; posted_on_gte?: string; posted_on_lt?: string; posted_on_lte?: string; include_unallocated_credit?: boolean; type?: string }, walletId?: string): Promise<SDKResult>;
324
+ getWalletSummarisedTotals(params?: { posted_on?: string; posted_on_gt?: string; posted_on_gte?: string; posted_on_lt?: string; posted_on_lte?: string }, walletId?: string): Promise<SDKResult>;
325
+ activateDeactivateCommercePool(params: { commerce_pool_id: string; action: string }): Promise<SDKResult>;
326
+ verifyWalletExists(params?: { type?: string; value?: string }): Promise<SDKResult>;
327
+ };
328
+
329
+ // ============================================================================
330
+ // Payment
331
+ // ============================================================================
332
+
333
+ export declare const payment: {
334
+ getListPaymentMethods(params?: PaginationParams & { support_payouts?: boolean; financial_types?: string; is_rewards?: boolean }): Promise<SDKResult>;
335
+ addPaymentMethod(params: { name?: string; contact_id?: string; is_primary?: boolean; is_backup?: boolean; payment_method_type: string; notes?: string; email?: string; phone?: string; country_code?: string; card_info?: any; gateway_name?: string; gateway_token: string; integration_id: string }, extra: {}): Promise<SDKResult>;
336
+ addPaymentMethodV2(params: { name?: string; is_primary?: boolean; payment_method_type: string; account_debit?: any; wallet?: any; card?: any; contact_id?: string }): Promise<SDKResult>;
337
+ removePaymentMethod(paymentMethodId: string): Promise<SDKResult>;
338
+ createPaymentForm(params: { topup_amount?: number; payment_method_id?: string; redirect_url?: string; estimation_id?: string }): Promise<SDKResult>;
339
+ createFormToAddCard(redirectUrl?: string): Promise<SDKResult>;
340
+ setPrimaryCard(paymentMethodId: string): Promise<SDKResult>;
341
+ getFormAddCard(params: { integration_id?: string; device_type?: string; redirect_url?: string; currency_code?: string; back_url?: string; back_url_name?: string }): Promise<SDKResult>;
342
+ getPaymentForm(params: Record<string, any>): Promise<SDKResult>;
343
+ createTopup(params: { amount: number; wallet_id?: string; code?: string; payment_method?: any; client_secret?: string; commerce_pool_id?: string }): Promise<SDKResult>;
344
+ };
345
+
346
+ // ============================================================================
347
+ // Subscriptions
348
+ // ============================================================================
349
+
350
+ export declare const subscriptions: {
351
+ getListSubscriptions(params?: { page?: number; size?: number; include_terms?: boolean; include_billing_info?: boolean }): Promise<SDKResult>;
352
+ getListContactServices(params?: PaginationParams & { classification?: string; include_future_info?: boolean; include_order_info?: boolean; include_subscription?: boolean; subscription_id?: string }): Promise<SDKResult>;
353
+ getListContactDevices(params?: PaginationParams & { owned_by_contact?: boolean; search_value?: string; serial_number?: string; include_custom_fields?: boolean; include_subscription?: boolean; include_characteristics?: boolean }): Promise<SDKResult>;
354
+ getListContactSharedDevices(params?: PaginationParams & { search_value?: string; serial_number?: string; include_custom_fields?: boolean; include_subscription?: boolean; include_characteristics?: boolean }): Promise<SDKResult>;
355
+ updateDevice(body: Record<string, any>, id: string): Promise<SDKResult>;
356
+ updateServices(params: { action: string; category_id?: string; scheduled_date?: string; use_proposed_date?: boolean; number_of_days?: number; quantity?: number; renewal_opt_in?: boolean; price_terms_id?: string; extend_contract?: boolean; change_to_service?: any; components?: any[]; trial_end_date?: string; enabled_devices?: any[] }, id: string): Promise<SDKResult>;
357
+ getProductsTier(params: { prodId: string; change_type?: string; page?: number; size?: number; contact_id?: string }): Promise<SDKResult>;
358
+ onServiceDelivery(params: { action: string; services_to_change: any[]; subscription_id?: string }): Promise<SDKResult>;
359
+ onEstimateBilling(params: { account_id: string; upcoming_billing_cycles?: number }): Promise<SDKResult>;
360
+ onUpdateServiceWithBody(serviceId: string, body: Record<string, any>): Promise<SDKResult>;
361
+ updateSubscription(params?: { action?: string; payment_method_id?: string; billing_day?: number; funding_source?: string }, id?: string): Promise<SDKResult>;
362
+ getServiceRescommendation(params: Record<string, any>): Promise<SDKResult>;
363
+ getSubscriptionAction(params: { action_id: string }): Promise<SDKResult>;
364
+ };
365
+
366
+ // ============================================================================
367
+ // Rewards
368
+ // ============================================================================
369
+
370
+ export declare const rewards: {
371
+ getRewards(): Promise<SDKResult>;
372
+ getOffers(params?: PaginationParams & { countries?: string; industry?: string; industry_sector?: string; organisations?: string; owner?: string; performance_enabled?: boolean; tags?: string; towns_cities?: string; reward_offer_tags?: string; lat?: number; lon?: number; is_featured?: boolean; search_value?: string; types?: string }): Promise<SDKResult>;
373
+ getPerformanceOffer(offerId: string): Promise<SDKResult>;
374
+ getListPromotions(params?: PaginationParams & { organisations?: string; promotion_tags?: string; search_value?: string }): Promise<SDKResult>;
375
+ getPromotion(id: string): Promise<SDKResult>;
376
+ searchRewardSchemes(params?: PaginationParams & { is_signed?: boolean; name?: string }): Promise<SDKResult>;
377
+ verifyClosedLoopScheme(params: { sign_up_code: string }): Promise<SDKResult>;
378
+ sendRefferals(params?: { recipients?: any[]; action?: string }): Promise<SDKResult>;
379
+ redeemPass(params?: { code?: string; pin?: string; wallet_id?: string }): Promise<SDKResult>;
380
+ reclaimPurchase(params?: { purchase_id?: string; merchant_tap?: string; venue_tap?: string; net_amount?: number; tax_amount?: number; discount_amount?: number; total_amount?: number; transaction_code?: string }): Promise<SDKResult>;
381
+ signUpRewardScheme(params: { reward_scheme_id: string; email_address?: string; sign_up_code?: string }): Promise<SDKResult>;
382
+ signOutRewardScheme(params: { reward_scheme_id: string }): Promise<SDKResult>;
383
+ getOfferDetail(offerId: string): Promise<SDKResult>;
384
+ getDonationDetail(donationId: string): Promise<SDKResult>;
385
+ getPassPlans(params?: { page?: number; size?: number }): Promise<SDKResult>;
386
+ };
387
+
388
+ // ============================================================================
389
+ // Account
390
+ // ============================================================================
391
+
392
+ export declare const account: {
393
+ getPrimaryAccount(): Promise<SDKResult>;
394
+ getAccount(accountId: string): Promise<SDKResult>;
395
+ getAccountJournals(params?: PaginationParams & { from_date?: string; to_date?: string; transaction_type?: string; type?: string }, accountId?: string): Promise<SDKResult>;
396
+ getAccountJournal(id: string): Promise<SDKResult>;
397
+ getAccountRewards(accountId?: string, includeRewards?: boolean): Promise<SDKResult>;
398
+ getAccountBalance(): Promise<SDKResult>;
399
+ };
400
+
401
+ // ============================================================================
402
+ // Communications
403
+ // ============================================================================
404
+
405
+ export declare const communications: {
406
+ getCommunications(params?: PaginationParams & { archived?: boolean; channel?: string; viewed?: boolean; created_on_gte?: string; created_on_lte?: string }): Promise<SDKResult>;
407
+ getCommunication(id: string): Promise<SDKResult>;
408
+ markReadCommunication(id: string): Promise<SDKResult>;
409
+ deleteCommunication(commId: string): Promise<SDKResult>;
410
+ };
411
+
412
+ // ============================================================================
413
+ // Community
414
+ // ============================================================================
415
+
416
+ export declare const community: {
417
+ getListJoinedCommunities(params?: PaginationParams, contactId?: string): Promise<SDKResult>;
418
+ getListCommunityPeople(params?: PaginationParams, contactId?: string): Promise<SDKResult>;
419
+ getCommunityPeople(peopleId: string): Promise<SDKResult>;
420
+ addCommunityPeople(params: { email?: string; phone_number?: string; country_code?: string; relation_id?: string; is_admin?: boolean; permissions?: any; group?: any; contact?: any }, contactId?: string): Promise<SDKResult>;
421
+ updateCommunityPeople(params: { relation_id?: string; is_admin?: boolean; permissions?: any; wallet_sharing?: any; usage_allowance?: any; group?: any; devices?: any[] }, peopleId: string): Promise<SDKResult>;
422
+ deleteCommunityPeople(peopleId: string): Promise<SDKResult>;
423
+ getCommunityRelations(params?: PaginationParams & { name?: string }): Promise<SDKResult>;
424
+ switchRole(communityId: string, isMerchant?: boolean): Promise<SDKResult>;
425
+ leaveCommunity(communityId: string): Promise<SDKResult>;
426
+ getContactGroups(): Promise<SDKResult>;
427
+ updateContactGroups(body: Record<string, any>, name: string): Promise<SDKResult>;
428
+ getCommunityMembers(params?: PaginationParams & { owner_id?: string; group?: string }): Promise<SDKResult>;
429
+ getCommunityMember(ownerId: string, memberId: string): Promise<SDKResult>;
430
+ acceptRejectCommunityInvitation(body: Record<string, any>, ownerId: string, relationId: string): Promise<SDKResult>;
431
+ deleteCommunityRelationship(ownerId: string, relationId: string): Promise<SDKResult>;
432
+ };
433
+
434
+ // ============================================================================
435
+ // Config
436
+ // ============================================================================
437
+
438
+ export declare const config: {
439
+ getAppCfg(params?: { app_id?: string; use_cname?: boolean; cname?: string }): Promise<SDKResult>;
440
+ getApplicationTranslations(params: { application_id: string }): Promise<SDKResult>;
441
+ getIndustries(params?: PaginationParams & { name?: string }): Promise<SDKResult>;
442
+ getIndustrySectors(params?: PaginationParams & { industry_name?: string; industry_sector_ids?: string; name?: string }): Promise<SDKResult>;
443
+ getTownCities(): Promise<SDKResult>;
444
+ getOrganisationTags(params?: PaginationParams & { industry?: string; industry_sector?: string }): Promise<SDKResult>;
445
+ getTags(params?: PaginationParams & { entity?: string; search_value?: string }): Promise<SDKResult>;
446
+ getLanguages(params: { unauthorize?: boolean }): Promise<SDKResult>;
447
+ findAddress(params?: { integration?: string; input?: string; session_id?: string }): Promise<SDKResult>;
448
+ getAddress(params?: { integration?: string; google_place_id?: string; session_id?: string; latlng?: string }): Promise<SDKResult>;
449
+ findAddressV1(params?: { integration?: string; address?: string; latlng?: string }): Promise<SDKResult>;
450
+ getIntegrations(params: { connector?: string; finance?: string; payment_method?: string; rewards?: string; transactions?: string; type?: string }, id: string): Promise<SDKResult>;
451
+ };
452
+
453
+ // ============================================================================
454
+ // Organisations
455
+ // ============================================================================
456
+
457
+ export declare const organisations: {
458
+ searchOrganisations(params?: PaginationParams & Record<string, any>, orgId?: string): Promise<SDKResult>;
459
+ getLocations(params?: PaginationParams & { lat?: number; lon?: number; business_activities?: string; include_creatives?: boolean; include_opening_hours?: boolean; industries?: string; industry_sectors?: string; is_open?: boolean; name?: string; supply_method?: string; tags?: string; town_cities?: string; within?: number; include_custom_fields?: boolean; custom_fields?: string; organisation_id?: string }): Promise<SDKResult>;
460
+ getOrganisation(id: string): Promise<SDKResult>;
461
+ };
462
+
463
+ // ============================================================================
464
+ // Service Requests
465
+ // ============================================================================
466
+
467
+ export declare const servicerequest: {
468
+ getListServiceRequests(params?: PaginationParams & { search_value?: string; states?: string; queue_id?: string }): Promise<SDKResult>;
469
+ createServiceRequest(params: { description: string; queue_id?: string; categories?: any[]; address_id?: string; other_address?: any }): Promise<SDKResult>;
470
+ addServiceRequestAttachment(params: { file_id: string; description?: string; service_request_id: string }): Promise<SDKResult>;
471
+ deleteServiceRequestAttachment(params: { file_id: string; service_request_id: string }): Promise<SDKResult>;
472
+ getListServiceRequestAttachment(params?: PaginationParams, id?: string): Promise<SDKResult>;
473
+ uploadFiles(params?: { file: any; disalbedContentType?: boolean }): Promise<SDKResult>;
474
+ getListServiceRequestQueues(params?: { state?: string; name?: string; search_value?: string }): Promise<SDKResult>;
475
+ getListServiceRequestNotes(params?: PaginationParams, id?: string): Promise<SDKResult>;
476
+ createServiceRequestNote(params: { note: string; service_request_id: string }): Promise<SDKResult>;
477
+ };
478
+
479
+ // ============================================================================
480
+ // Specialized Modules
481
+ // ============================================================================
482
+
483
+ export declare const connectx: {
484
+ getBuckets(serialNumber: string): Promise<SDKResult>;
485
+ simConfirmation(body: Record<string, any>, serialNumber: string): Promise<SDKResult>;
486
+ simActivation(body: Record<string, any>, serialNumber: string): Promise<SDKResult>;
487
+ simDownload(body?: Record<string, any>): Promise<SDKResult>;
488
+ portIn(body: Record<string, any>): Promise<SDKResult>;
489
+ };
490
+
491
+ export declare const jcccards: {
492
+ addCard(number: string): Promise<SDKResult>;
493
+ };
494
+
495
+ export declare const mobilepass: {
496
+ getGooglePass(params: { contact_id?: string; organisation_id?: string }, extra: {}): Promise<SDKResult>;
497
+ getApplePass(params: { contact_id?: string; organisation_id?: string }, extra: {}): Promise<SDKResult>;
498
+ getAndroidWalletPass(params: { contact_id?: string; organisation_id?: string }, extra: {}): Promise<SDKResult>;
499
+ };
500
+
501
+ export declare const paymentgateway: {
502
+ getClientToken(params?: { integration_id?: string }): Promise<SDKResult>;
503
+ };
504
+
505
+ export declare const payouts: {
506
+ createPayout(params: { wallet_id?: string; amount: number; payment_method: any }): Promise<SDKResult>;
507
+ };
508
+
509
+ // ============================================================================
510
+ // Event Listener
511
+ // ============================================================================
512
+
513
+ export declare const eventTypes: {
514
+ kochava: 'KOCHAVA';
515
+ };
516
+
517
+ export declare const eventListener: {
518
+ handleEvent(params: { type: string; code: string; data: any; object_type: string }): Promise<void>;
519
+ };
520
+
521
+ // ============================================================================
522
+ // Data Utilities
523
+ // ============================================================================
524
+
525
+ export declare const dataUtil: {
526
+ [key: string]: (...args: any[]) => any;
527
+ };
package/index.js ADDED
@@ -0,0 +1,24 @@
1
+ export { httpUtil } from './httpUtil.js';
2
+ export { httpBackOfficeUtil } from './httpBackOfficeUtil.js';
3
+ export { authentication } from './authentication.js';
4
+ export { contacts } from './contacts.js';
5
+ export { orders } from './orders.js';
6
+ export { wallet } from './wallet.js';
7
+ export { payment } from './payment.js';
8
+ export { subscriptions } from './subscriptions.js';
9
+ export { rewards } from './rewards.js';
10
+ export { account } from './account.js';
11
+ export { communications } from './communications.js';
12
+ export { community } from './community.js';
13
+ export { config } from './config.js';
14
+ export { connectx } from './connectx.js';
15
+ export { organisations } from './organisations.js';
16
+ export { servicerequest } from './servicerequest.js';
17
+ export { jcccards } from './jcccards.js';
18
+ export { mobilepass } from './mobilepass.js';
19
+ export { paymentgateway } from './paymentgateway.js';
20
+ export { payouts } from './payouts.js';
21
+ export { dataUtil } from './dataUtil.js';
22
+ export { ErrorCodes, createResult, createCommonResult } from './resultUtil.js';
23
+ export { eventListener, eventTypes } from './eventListener.js';
24
+ export { logger } from './logger.js';