11import { BaseApiClient } from './base_api_client' ;
22import {
3+ BcdResponse ,
34 CarResponse ,
5+ CbcResponse ,
6+ CcpResponse ,
47 CecResponse ,
58 CloResponse ,
9+ CscResponse ,
610 CseResponse ,
11+ CsnResponse ,
712 CufResponse ,
813 DtcResponse ,
914 DteResponse ,
@@ -14,8 +19,11 @@ import {
1419 FclResponse ,
1520 FtsResponse ,
1621 FweResponse ,
22+ IscResponse ,
1723 LbsResponse ,
1824 LcufResponse ,
25+ NaaResponse ,
26+ NaoResponse ,
1927 NtpResponse ,
2028 PseResponse ,
2129 RelResponse ,
@@ -25,10 +33,15 @@ import { CseParams, CufinderClientConfig, LbsParams, PseParams } from './shared/
2533
2634// Services
2735import {
36+ BcdService ,
2837 CarService ,
38+ CbcService ,
39+ CcpService ,
2940 CecService ,
3041 CloService ,
42+ CscService ,
3143 CseService ,
44+ CsnService ,
3245 CufService ,
3346 DtcService ,
3447 DteService ,
@@ -39,8 +52,11 @@ import {
3952 FclService ,
4053 FtsService ,
4154 FweService ,
55+ IscService ,
4256 LbsService ,
4357 LcufService ,
58+ NaaService ,
59+ NaoService ,
4460 NtpService ,
4561 PseService ,
4662 RelService ,
@@ -302,7 +318,7 @@ export class Cufinder {
302318 /**
303319 * Search for local businesses
304320 * @param params - Optional search parameters
305- * @returns Promise resolving to local business search results
321+ * @returns The local business search results
306322 * @example
307323 * ```typescript
308324 * const result = await client.lbs({
@@ -315,6 +331,102 @@ export class Cufinder {
315331 */
316332 public readonly lbs : ( params ?: LbsParams ) => Promise < LbsResponse > ;
317333
334+ /**
335+ * Extract B2B Customers From the Domain
336+ * @param url - The domain to extract B2B customers for
337+ * @returns List of business names
338+ * @example
339+ * ```typescript
340+ * const result = await client.bcd('stripe.com');
341+ * console.log(result);
342+ * ```
343+ */
344+ public readonly bcd : ( url : string ) => Promise < BcdResponse > ;
345+
346+ /**
347+ * Find company careers page
348+ * @param url - The company domain you want to find it's career page
349+ * @returns Company's careers page
350+ * @example
351+ * ```typescript
352+ * const result = await client.ccp('stripe.com');
353+ * console.log(result);
354+ * ```
355+ */
356+ public readonly ccp : ( url : string ) => Promise < CcpResponse > ;
357+
358+ /**
359+ * Check company you want to know is saas or not
360+ * @param url - The company domain you want to check is saas or not
361+ * @returns Is company SaaS or not
362+ * @example
363+ * ```typescript
364+ * const result = await client.isc('stripe.com')
365+ * console.log(result.is_saas);
366+ * ```
367+ */
368+ public readonly isc : ( url : string ) => Promise < IscResponse > ;
369+
370+ /**
371+ * Get a company's business type
372+ * @param url - The company domain you want to check
373+ * @returns Company's business type
374+ * @example
375+ * ```typescript
376+ * const result = await client.cbc('stripe.com')
377+ * console.log(result.business_type);
378+ * ```
379+ */
380+ public readonly cbc : ( url : string ) => Promise < CbcResponse > ;
381+
382+ /**
383+ * Get company mission statement
384+ * @param url - The company domain you want to check
385+ * @returns Company's mission statement
386+ * @example
387+ * ```typescript
388+ * const result = await client.csc('stripe.com')
389+ * console.log(result.mission_statement);
390+ * ```
391+ */
392+ public readonly csc : ( url : string ) => Promise < CscResponse > ;
393+
394+ /**
395+ * Get company snapshot info
396+ * @param url - The company domain you want to check
397+ * @returns Company's snapshot information
398+ * @example
399+ * ```typescript
400+ * const result = await client.csn('stripe.com')
401+ * console.log(result.company_snapshot);
402+ * ```
403+ */
404+ public readonly csn : ( url : string ) => Promise < CsnResponse > ;
405+
406+ /**
407+ * Normalize phone number
408+ * @param phone - The phone number you want to normalize
409+ * @returns Normalized phone
410+ * @example
411+ * ```typescript
412+ * const result = await client.nao('+18006676389')
413+ * console.log(result.phone); // +1 800 667 6389
414+ * ```
415+ */
416+ public readonly nao : ( phone : string ) => Promise < NaoResponse > ;
417+
418+ /**
419+ * Get normalized address
420+ * @param address - The address you want to normalize
421+ * @returns Normalized address
422+ * @example
423+ * ```typescript
424+ * const result = await client.naa('1095 avenue of the Americas, 6th Avenue ny 10036')
425+ * console.log(result.address); // 1095 AVENUE OF THE AMERICAS 6TH AVENUE NY 10036
426+ * ```
427+ */
428+ public readonly naa : ( address : string ) => Promise < NaaResponse > ;
429+
318430 constructor ( apiKey : string , options ?: CufinderClientConfig ) {
319431 this . client = new BaseApiClient ( { apiKey, ...options } ) ;
320432
@@ -339,6 +451,14 @@ export class Cufinder {
339451 const cse = new CseService ( this . client ) ;
340452 const pse = new PseService ( this . client ) ;
341453 const lbs = new LbsService ( this . client ) ;
454+ const bcd = new BcdService ( this . client ) ;
455+ const ccp = new CcpService ( this . client ) ;
456+ const isc = new IscService ( this . client ) ;
457+ const cbc = new CbcService ( this . client ) ;
458+ const csc = new CscService ( this . client ) ;
459+ const csn = new CsnService ( this . client ) ;
460+ const nao = new NaoService ( this . client ) ;
461+ const naa = new NaaService ( this . client ) ;
342462
343463 // Expose services as direct functions
344464 this . cuf = ( companyName , countryCode ) => cuf . getDomain ( companyName , countryCode ) ;
@@ -361,5 +481,13 @@ export class Cufinder {
361481 this . cse = params => cse . searchCompanies ( params ) ;
362482 this . pse = params => pse . searchPeople ( params ) ;
363483 this . lbs = params => lbs . searchLocalBusinesses ( params ) ;
484+ this . bcd = url => bcd . extractB2BCustomers ( url ) ;
485+ this . ccp = url => ccp . findCareersPage ( url ) ;
486+ this . isc = url => isc . isSaas ( url ) ;
487+ this . cbc = url => cbc . getCompanyBusinessType ( url ) ;
488+ this . csc = url => csc . getCompanyMissionStatment ( url ) ;
489+ this . csn = url => csn . getCompanySnapshot ( url ) ;
490+ this . nao = phone => nao . normalizePhone ( phone ) ;
491+ this . naa = address => naa . normalizeAddress ( address ) ;
364492 }
365493}
0 commit comments