export const DEEPLINE_TOOL_CATEGORIES = [ 'company_search', 'people_search', 'people_enrich', 'email_finder', 'email_verify', 'phone_finder', 'phone_verify', 'identity_resolution', 'reverse_lookup', 'enrichment', 'batch', 'premium', 'free', ] as const; export type DeeplineToolCategory = | (typeof DEEPLINE_TOOL_CATEGORIES)[number] | (string & {}); export const PLAY_BOOTSTRAP_TEMPLATES = [ 'people-list', 'company-list', 'people-email', 'people-phone', 'company-people', 'company-people-email', 'company-people-phone', ] as const; export type PlayBootstrapTemplate = (typeof PLAY_BOOTSTRAP_TEMPLATES)[number]; export const PLAY_BOOTSTRAP_SOURCE_KINDS = [ 'csv', 'play', 'provider', 'providers', ] as const; export type PlayBootstrapSourceKind = (typeof PLAY_BOOTSTRAP_SOURCE_KINDS)[number]; export const PLAY_BOOTSTRAP_STAGE_KINDS = [ 'play', 'provider', 'providers', ] as const; export type PlayBootstrapStageKind = (typeof PLAY_BOOTSTRAP_STAGE_KINDS)[number]; export const PLAY_BOOTSTRAP_FINDER_KINDS = [ 'email_finder', 'phone_finder', ] as const; export type PlayBootstrapFinderKind = (typeof PLAY_BOOTSTRAP_FINDER_KINDS)[number]; export type PlayBootstrapGetterKind = 'list' | 'value'; export type PlayBootstrapEntityKind = | 'company' | 'contact' | 'email' | 'phone' | 'unknown'; export const PLAY_BOOTSTRAP_COMPANY_PROVIDER_CATEGORY = 'company_search' as const; export const PLAY_BOOTSTRAP_PEOPLE_PROVIDER_CATEGORY = 'people_search' as const; export const PLAY_BOOTSTRAP_PROVIDER_CATEGORY_BY_FINDER = { email_finder: 'email_finder', phone_finder: 'phone_finder', } as const satisfies Record; export const PLAY_BOOTSTRAP_OUTPUT_FIELD_BY_FINDER = { email_finder: 'email', phone_finder: 'phone', } as const satisfies Record; export const PLAY_BOOTSTRAP_CONTACT_FIELDS = [ 'first_name', 'last_name', 'domain', 'company_name', 'linkedin_url', 'title', 'email', 'phone', ] as const; export const PLAY_BOOTSTRAP_COMPANY_FIELDS = [ 'domain', 'company_domain', 'company_name', 'linkedin_url', 'website', ] as const; export function isPlayBootstrapFinderKind( value: string, ): value is PlayBootstrapFinderKind { return PLAY_BOOTSTRAP_FINDER_KINDS.includes(value as PlayBootstrapFinderKind); } export function isPlayBootstrapTemplate( value: string, ): value is PlayBootstrapTemplate { return PLAY_BOOTSTRAP_TEMPLATES.includes(value as PlayBootstrapTemplate); } export function formatPlayBootstrapFinderKinds(): string { return PLAY_BOOTSTRAP_FINDER_KINDS.join('|'); } export function formatPlayBootstrapTemplates(): string { return PLAY_BOOTSTRAP_TEMPLATES.join('|'); } export function formatPlayBootstrapFinderKindsForSentence(): string { const allButLast = PLAY_BOOTSTRAP_FINDER_KINDS.slice(0, -1); const last = PLAY_BOOTSTRAP_FINDER_KINDS.at(-1); return `${allButLast.join(', ')} or ${last}`; }