@cavuno/board 3.2.0 → 4.0.0

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.
Files changed (77) hide show
  1. package/CHANGELOG.md +406 -0
  2. package/README.md +6 -2
  3. package/dist/{_spec-nkWAraS0.d.mts → _spec-GVe6WAfT.d.mts} +68 -59
  4. package/dist/{_spec-nkWAraS0.d.ts → _spec-GVe6WAfT.d.ts} +68 -59
  5. package/dist/bin.mjs +7 -2
  6. package/dist/{blog-iV9XEIGf.d.ts → blog-BsmKizpd.d.ts} +1 -1
  7. package/dist/{blog-DGBHmExV.d.mts → blog-Cf64mI8A.d.mts} +1 -1
  8. package/dist/{board-BJbXd_9_.d.mts → board-DUhgiacm.d.ts} +7 -6
  9. package/dist/{board-JhdUWIoq.d.ts → board-GGWJ4coe.d.mts} +7 -6
  10. package/dist/breadcrumbs-DFKr0HzU.d.mts +372 -0
  11. package/dist/breadcrumbs-DiccJhk4.d.ts +372 -0
  12. package/dist/chunk-BGKNXG4H.mjs +146 -0
  13. package/dist/{chunk-NXY3OWGF.mjs → chunk-T2KC6XGV.mjs} +1 -1
  14. package/dist/{chunk-STE77MAT.mjs → chunk-YEAQ3JEI.mjs} +143 -134
  15. package/dist/doctor.js +1 -1
  16. package/dist/doctor.mjs +1 -1
  17. package/dist/filters.d.mts +25 -20
  18. package/dist/filters.d.ts +25 -20
  19. package/dist/filters.js +3 -692
  20. package/dist/filters.mjs +3 -29
  21. package/dist/format.d.mts +57 -231
  22. package/dist/format.d.ts +57 -231
  23. package/dist/format.js +327 -968
  24. package/dist/format.mjs +207 -264
  25. package/dist/go.js +11 -1
  26. package/dist/go.mjs +1 -1
  27. package/dist/index.d.mts +23 -76
  28. package/dist/index.d.ts +23 -76
  29. package/dist/index.js +11 -36
  30. package/dist/index.mjs +11 -36
  31. package/dist/{jobs-BiEvL9d7.d.ts → jobs-BuLpV8iy.d.mts} +4 -4
  32. package/dist/{jobs-lVvKCBCU.d.mts → jobs-QrbXOYB9.d.ts} +4 -4
  33. package/dist/paths.d.mts +89 -1
  34. package/dist/paths.d.ts +89 -1
  35. package/dist/paths.js +62 -14
  36. package/dist/paths.mjs +11 -3
  37. package/dist/route-contract.js +23 -13
  38. package/dist/route-contract.mjs +2 -2
  39. package/dist/{search-CyRvVMUp.d.ts → search-Cr4noJJZ.d.mts} +14 -3
  40. package/dist/{search-CCyFWPi3.d.mts → search-DdsniXQv.d.ts} +14 -3
  41. package/dist/seo.d.mts +30 -29
  42. package/dist/seo.d.ts +30 -29
  43. package/dist/seo.js +197 -718
  44. package/dist/seo.mjs +26 -24
  45. package/dist/server.d.mts +5 -5
  46. package/dist/server.d.ts +5 -5
  47. package/dist/sitemap.d.mts +5 -5
  48. package/dist/sitemap.d.ts +5 -5
  49. package/dist/sitemap.js +25 -14
  50. package/dist/sitemap.mjs +3 -2
  51. package/dist/skills.js +1 -1
  52. package/dist/skills.mjs +1 -1
  53. package/dist/suggest.d.mts +2 -2
  54. package/dist/suggest.d.ts +2 -2
  55. package/dist/suggest.js +17 -3
  56. package/dist/suggest.mjs +17 -3
  57. package/dist/well-known.js +23 -13
  58. package/dist/well-known.mjs +2 -2
  59. package/package.json +2 -4
  60. package/skills/cavuno-board-applications/SKILL.md +4 -1
  61. package/skills/cavuno-board-filters/SKILL.md +11 -12
  62. package/skills/cavuno-board-format/SKILL.md +68 -56
  63. package/skills/cavuno-board-i18n/SKILL.md +102 -21
  64. package/skills/cavuno-board-search-suggestions/SKILL.md +8 -3
  65. package/skills/cavuno-board-seo/BLOG.md +4 -1
  66. package/skills/cavuno-board-seo/JOB_AND_BREADCRUMBS.md +5 -2
  67. package/skills/cavuno-board-seo/LISTING.md +35 -12
  68. package/skills/cavuno-board-seo/SALARY.md +83 -18
  69. package/skills/cavuno-board-seo/SKILL.md +3 -2
  70. package/skills/manifest.json +3 -3
  71. package/dist/breadcrumbs-1hMjcsqA.d.mts +0 -171
  72. package/dist/breadcrumbs-DexU07TT.d.ts +0 -171
  73. package/dist/chunk-IJCJ26SQ.mjs +0 -596
  74. package/dist/chunk-L7ZOYWHW.mjs +0 -98
  75. package/dist/chunk-LUGJWOT7.mjs +0 -96
  76. package/dist/ui-copy-CCkz6CVF.d.mts +0 -230
  77. package/dist/ui-copy-CCkz6CVF.d.ts +0 -230
package/dist/index.d.mts CHANGED
@@ -1,12 +1,12 @@
1
- import { S as Schemas, c as components } from './_spec-nkWAraS0.mjs';
2
- import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-CCyFWPi3.mjs';
3
- export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, R as REFRESH_TOKEN_KEY, f as SuggestResult, g as SuggestionItem, T as TermSuggestion } from './search-CCyFWPi3.mjs';
4
- import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-BJbXd_9_.mjs';
5
- export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-BJbXd_9_.mjs';
6
- import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, b as JobsListQuery, c as JobCardListEnvelope, d as JobsSearchBody, e as JobCardSearchEnvelope, f as JobsSimilarQuery, g as SearchEnvelope } from './jobs-lVvKCBCU.mjs';
7
- export { h as CustomFieldValue, C as CustomFieldValues, i as EducationRequirement, j as JobCatalogPagination, k as JobCompany, J as JobSort, O as OfficeLocation, l as OffsetPagination, P as PublicJob, a as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-lVvKCBCU.mjs';
8
- import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-DGBHmExV.mjs';
9
- export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-DGBHmExV.mjs';
1
+ import { S as Schemas, c as components } from './_spec-GVe6WAfT.mjs';
2
+ import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-Cr4noJJZ.mjs';
3
+ export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-Cr4noJJZ.mjs';
4
+ import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-GGWJ4coe.mjs';
5
+ export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-GGWJ4coe.mjs';
6
+ import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-BuLpV8iy.mjs';
7
+ export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-BuLpV8iy.mjs';
8
+ import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-Cf64mI8A.mjs';
9
+ export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-Cf64mI8A.mjs';
10
10
 
11
11
  /**
12
12
  * Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
@@ -142,7 +142,7 @@ declare function paginate<Q extends Record<string, unknown>, P extends PageShape
142
142
  * constant because the package is platform-neutral and cannot read
143
143
  * package.json at runtime.
144
144
  */
145
- declare const SDK_VERSION = "3.2.0";
145
+ declare const SDK_VERSION = "4.0.0";
146
146
 
147
147
  type SavedJob = Schemas['SavedJob'];
148
148
  type SavedJobsListQuery = {
@@ -425,10 +425,11 @@ type OAuthAuthorizationUrl = Schemas['BoardAuthOAuthAuthorizationUrl'];
425
425
  type OAuthExchangeBody = Schemas['BoardAuthOAuthExchangeBody'];
426
426
 
427
427
  /**
428
- * The public SEO-infra payload (`board.seo()`) — the values a headless
429
- * frontend rebuilds `robots.txt` / `ads.txt` / `indexnow-key.txt` (+ the
430
- * Google site-verification `<meta>` + favicons/web-manifest) from,
431
- * byte-identically to the hosted board.
428
+ * The public SEO-infra payload (`board.seo()`) — platform infrastructure a
429
+ * headless frontend rebuilds `robots.txt` / `ads.txt` / `indexnow-key.txt`
430
+ * (+ the Google site-verification `<meta>`) from, byte-identically to the
431
+ * hosted board. Icons and `themeColor` left in 4.0.0; applications
432
+ * own brand assets and presentation tokens.
432
433
  */
433
434
  type BoardSeo = Schemas['BoardSeo'];
434
435
 
@@ -465,16 +466,6 @@ type BoardAccessGrant = Schemas['BoardAccessGrant'];
465
466
  */
466
467
  type RedirectResolution = Schemas['RedirectResolution'];
467
468
 
468
- /**
469
- * A board legal/about page. The
470
- * API serves owner-authored prose as portable HTML; the starter authors the
471
- * layout + JSON-LD. Impressum additionally carries structured legal-entity
472
- * facts and is gated by the board's `impressumEnabled` flag (404 when off).
473
- */
474
- type LegalPageType = 'terms-of-service' | 'privacy-policy' | 'cookie-policy' | 'about' | 'impressum';
475
- type PublicLegalPage = Schemas['LegalPage'];
476
- type LegalEntity = NonNullable<PublicLegalPage['legalEntity']>;
477
-
478
469
  /**
479
470
  * A candidate's public profile — header (name, headline, location, bio, avatar,
480
471
  * job-search status) plus their experiences, education, skills, and languages.
@@ -631,7 +622,6 @@ type TaxonomyListQuery = {
631
622
  cursor?: string;
632
623
  limit?: number;
633
624
  };
634
- type SuggestionsListQuery = Omit<TaxonomyListQuery, 'cursor'>;
635
625
  /**
636
626
  * Query for `taxonomy.places.list()`. Omit it (or `q`) for the full
637
627
  * locations directory; pass `q` (≥2 chars) for location autocomplete — the
@@ -700,7 +690,7 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
700
690
  candidates: boolean;
701
691
  employers: boolean;
702
692
  blog: boolean;
703
- talentDirectory: boolean;
693
+ talentDirectory: "off" | "public" | "employers_only";
704
694
  registrationWall: boolean;
705
695
  passwordProtected: boolean;
706
696
  publicJobSubmission: boolean;
@@ -709,7 +699,6 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
709
699
  nativeApplications: boolean;
710
700
  messaging: boolean;
711
701
  };
712
- talentDirectoryVisibility: "off" | "public" | "employers_only";
713
702
  analytics: {
714
703
  ga4MeasurementId: string | null;
715
704
  gtmId: string | null;
@@ -717,25 +706,15 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
717
706
  linkedInPartnerId: string | null;
718
707
  cookieConsentRequired: boolean;
719
708
  };
720
- customFields: components["schemas"]["CustomFieldDefinition"][];
721
- labels: {
722
- [key: string]: {
723
- [key: string]: string;
724
- };
709
+ customFields: {
710
+ job: components["schemas"]["CustomFieldDefinition"][];
725
711
  };
726
- footer: {
727
- description: string | null;
728
- contactEmail: string | null;
712
+ contact: {
713
+ email: string | null;
729
714
  websiteUrl: string | null;
730
715
  xUrl: string | null;
731
716
  facebookUrl: string | null;
732
717
  linkedinUrl: string | null;
733
- navigationOrder: string[];
734
- customLinks: {
735
- id: string;
736
- label: string;
737
- url: string;
738
- }[];
739
718
  };
740
719
  }>;
741
720
  /**
@@ -752,17 +731,8 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
752
731
  indexNowKey: string | null;
753
732
  googleSiteVerification: string | null;
754
733
  canonicalBase: string;
755
- icons: {
756
- ico: string | null;
757
- svg: string | null;
758
- appleTouch: string | null;
759
- icon192: string | null;
760
- icon512: string | null;
761
- iconMaskable512: string | null;
762
- };
763
734
  manifest: {
764
735
  name: string;
765
- themeColor: string;
766
736
  };
767
737
  }>;
768
738
  jobs: {
@@ -1246,19 +1216,6 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
1246
1216
  tags: components["schemas"]["PublicBlogTagEmbed"][];
1247
1217
  }>>;
1248
1218
  };
1249
- legal: {
1250
- retrieve(type: LegalPageType, options?: FetchOptions): Promise<{
1251
- object: "legal_page";
1252
- type: string;
1253
- title: string;
1254
- content: string;
1255
- contentFormat: "html";
1256
- legalEntity: {
1257
- legalName: string | null;
1258
- address: string | null;
1259
- } | null;
1260
- }>;
1261
- };
1262
1219
  auth: {
1263
1220
  register(body: RegisterBody, options?: FetchOptions): Promise<{
1264
1221
  object: "board_auth_session";
@@ -2110,14 +2067,14 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
2110
2067
  object: "saved_job";
2111
2068
  jobId: string;
2112
2069
  savedAt: string;
2113
- job: components["schemas"]["PublicJob"];
2070
+ job: components["schemas"]["PublicJobCard"];
2114
2071
  }>>;
2115
2072
  save(body: SaveJobBody, query?: Record<string, never>, options?: FetchOptions): Promise<{
2116
2073
  id: string;
2117
2074
  object: "saved_job";
2118
2075
  jobId: string;
2119
2076
  savedAt: string;
2120
- job: components["schemas"]["PublicJob"];
2077
+ job: components["schemas"]["PublicJobCard"];
2121
2078
  }>;
2122
2079
  unsave(jobId: string, query?: Record<string, never>, options?: FetchOptions): Promise<void>;
2123
2080
  };
@@ -2348,16 +2305,6 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
2348
2305
  label: string;
2349
2306
  }>>;
2350
2307
  };
2351
- suggestions: {
2352
- list(query?: SuggestionsListQuery, options?: FetchOptions): Promise<ListEnvelope<{
2353
- object: "taxonomy_term";
2354
- id: string;
2355
- type: "category" | "skill";
2356
- sourceSlug: string;
2357
- canonicalSlug: string;
2358
- displayName: string;
2359
- }>>;
2360
- };
2361
2308
  places: {
2362
2309
  list(query?: PlacesListQuery, options?: FetchOptions): Promise<ListEnvelope<{
2363
2310
  object: "place";
@@ -3020,4 +2967,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
3020
2967
  };
3021
2968
  type BoardSdk = ReturnType<typeof createBoardClient>;
3022
2969
 
3023
- export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, type LegalEntity, type LegalPageType, ListEnvelope, Logger, type LoginBody, type LogoutBody, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicLegalPage, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type SuggestionsListQuery, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
2970
+ export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
package/dist/index.d.ts CHANGED
@@ -1,12 +1,12 @@
1
- import { S as Schemas, c as components } from './_spec-nkWAraS0.js';
2
- import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-CyRvVMUp.js';
3
- export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, R as REFRESH_TOKEN_KEY, f as SuggestResult, g as SuggestionItem, T as TermSuggestion } from './search-CyRvVMUp.js';
4
- import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-JhdUWIoq.js';
5
- export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-JhdUWIoq.js';
6
- import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, b as JobsListQuery, c as JobCardListEnvelope, d as JobsSearchBody, e as JobCardSearchEnvelope, f as JobsSimilarQuery, g as SearchEnvelope } from './jobs-BiEvL9d7.js';
7
- export { h as CustomFieldValue, C as CustomFieldValues, i as EducationRequirement, j as JobCatalogPagination, k as JobCompany, J as JobSort, O as OfficeLocation, l as OffsetPagination, P as PublicJob, a as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-BiEvL9d7.js';
8
- import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-iV9XEIGf.js';
9
- export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-iV9XEIGf.js';
1
+ import { S as Schemas, c as components } from './_spec-GVe6WAfT.js';
2
+ import { F as FetchOptions, S as StorageMode, B as BoardRequest, A as Awaitable, L as Logger, a as BoardClient, b as SearchSuggestQuery } from './search-DdsniXQv.js';
3
+ export { c as ACCESS_TOKEN_KEY, d as BOARD_ACCESS_GRANT_KEY, C as CompanySuggestion, e as CustomStorage, M as MarketSuggestion, R as REFRESH_TOKEN_KEY, f as SearchSuggestType, g as SuggestResult, h as SuggestionItem, T as TermSuggestion } from './search-DdsniXQv.js';
4
+ import { c as CompaniesListQuery, d as CompanyListEnvelope, e as CompaniesSearchBody, f as CompanyJobsListQuery, g as CompanySimilarQuery, h as CompanyMarketsListQuery, i as SalaryDetailQuery } from './board-DUhgiacm.js';
5
+ export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, C as CustomFieldDefinition, l as CustomFieldOption, m as CustomFieldType, L as LocationSalaryDetail, n as LocationSkillsIndex, o as LocationTitlesIndex, P as PublicBoard, p as PublicBoardAnalytics, q as PublicBoardFeatures, r as PublicCompany, s as PublicCompanyDetail, t as SalaryCompany, u as SalaryLocation, v as SalarySkill, w as SalaryTitle, x as SkillLocationSalary, y as SkillLocationsIndex, S as SkillSalaryDetail, z as TitleLocationSalary, A as TitleLocationsIndex, T as TitleSalaryDetail } from './board-DUhgiacm.js';
6
+ import { R as RemoteOption, E as EmploymentType, S as Seniority, L as ListEnvelope, a as JobsListQuery, b as JobCardListEnvelope, c as JobsSearchBody, d as JobCardSearchEnvelope, e as JobsSimilarQuery, f as SearchEnvelope } from './jobs-QrbXOYB9.js';
7
+ export { g as CustomFieldValue, C as CustomFieldValues, h as EducationRequirement, i as JobCatalogPagination, j as JobCompany, J as JobSort, O as OfficeLocation, k as OffsetPagination, P as PublicJob, l as PublicJobCard, m as RelatedSearch, n as RemotePermit, o as RemoteTimezone, p as StorefrontPagination } from './jobs-QrbXOYB9.js';
8
+ import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-BsmKizpd.js';
9
+ export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts, f as PublicBlogAuthor, g as PublicBlogPost, P as PublicBlogPostSummary, h as PublicBlogTag } from './blog-BsmKizpd.js';
10
10
 
11
11
  /**
12
12
  * Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
@@ -142,7 +142,7 @@ declare function paginate<Q extends Record<string, unknown>, P extends PageShape
142
142
  * constant because the package is platform-neutral and cannot read
143
143
  * package.json at runtime.
144
144
  */
145
- declare const SDK_VERSION = "3.2.0";
145
+ declare const SDK_VERSION = "4.0.0";
146
146
 
147
147
  type SavedJob = Schemas['SavedJob'];
148
148
  type SavedJobsListQuery = {
@@ -425,10 +425,11 @@ type OAuthAuthorizationUrl = Schemas['BoardAuthOAuthAuthorizationUrl'];
425
425
  type OAuthExchangeBody = Schemas['BoardAuthOAuthExchangeBody'];
426
426
 
427
427
  /**
428
- * The public SEO-infra payload (`board.seo()`) — the values a headless
429
- * frontend rebuilds `robots.txt` / `ads.txt` / `indexnow-key.txt` (+ the
430
- * Google site-verification `<meta>` + favicons/web-manifest) from,
431
- * byte-identically to the hosted board.
428
+ * The public SEO-infra payload (`board.seo()`) — platform infrastructure a
429
+ * headless frontend rebuilds `robots.txt` / `ads.txt` / `indexnow-key.txt`
430
+ * (+ the Google site-verification `<meta>`) from, byte-identically to the
431
+ * hosted board. Icons and `themeColor` left in 4.0.0; applications
432
+ * own brand assets and presentation tokens.
432
433
  */
433
434
  type BoardSeo = Schemas['BoardSeo'];
434
435
 
@@ -465,16 +466,6 @@ type BoardAccessGrant = Schemas['BoardAccessGrant'];
465
466
  */
466
467
  type RedirectResolution = Schemas['RedirectResolution'];
467
468
 
468
- /**
469
- * A board legal/about page. The
470
- * API serves owner-authored prose as portable HTML; the starter authors the
471
- * layout + JSON-LD. Impressum additionally carries structured legal-entity
472
- * facts and is gated by the board's `impressumEnabled` flag (404 when off).
473
- */
474
- type LegalPageType = 'terms-of-service' | 'privacy-policy' | 'cookie-policy' | 'about' | 'impressum';
475
- type PublicLegalPage = Schemas['LegalPage'];
476
- type LegalEntity = NonNullable<PublicLegalPage['legalEntity']>;
477
-
478
469
  /**
479
470
  * A candidate's public profile — header (name, headline, location, bio, avatar,
480
471
  * job-search status) plus their experiences, education, skills, and languages.
@@ -631,7 +622,6 @@ type TaxonomyListQuery = {
631
622
  cursor?: string;
632
623
  limit?: number;
633
624
  };
634
- type SuggestionsListQuery = Omit<TaxonomyListQuery, 'cursor'>;
635
625
  /**
636
626
  * Query for `taxonomy.places.list()`. Omit it (or `q`) for the full
637
627
  * locations directory; pass `q` (≥2 chars) for location autocomplete — the
@@ -700,7 +690,7 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
700
690
  candidates: boolean;
701
691
  employers: boolean;
702
692
  blog: boolean;
703
- talentDirectory: boolean;
693
+ talentDirectory: "off" | "public" | "employers_only";
704
694
  registrationWall: boolean;
705
695
  passwordProtected: boolean;
706
696
  publicJobSubmission: boolean;
@@ -709,7 +699,6 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
709
699
  nativeApplications: boolean;
710
700
  messaging: boolean;
711
701
  };
712
- talentDirectoryVisibility: "off" | "public" | "employers_only";
713
702
  analytics: {
714
703
  ga4MeasurementId: string | null;
715
704
  gtmId: string | null;
@@ -717,25 +706,15 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
717
706
  linkedInPartnerId: string | null;
718
707
  cookieConsentRequired: boolean;
719
708
  };
720
- customFields: components["schemas"]["CustomFieldDefinition"][];
721
- labels: {
722
- [key: string]: {
723
- [key: string]: string;
724
- };
709
+ customFields: {
710
+ job: components["schemas"]["CustomFieldDefinition"][];
725
711
  };
726
- footer: {
727
- description: string | null;
728
- contactEmail: string | null;
712
+ contact: {
713
+ email: string | null;
729
714
  websiteUrl: string | null;
730
715
  xUrl: string | null;
731
716
  facebookUrl: string | null;
732
717
  linkedinUrl: string | null;
733
- navigationOrder: string[];
734
- customLinks: {
735
- id: string;
736
- label: string;
737
- url: string;
738
- }[];
739
718
  };
740
719
  }>;
741
720
  /**
@@ -752,17 +731,8 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
752
731
  indexNowKey: string | null;
753
732
  googleSiteVerification: string | null;
754
733
  canonicalBase: string;
755
- icons: {
756
- ico: string | null;
757
- svg: string | null;
758
- appleTouch: string | null;
759
- icon192: string | null;
760
- icon512: string | null;
761
- iconMaskable512: string | null;
762
- };
763
734
  manifest: {
764
735
  name: string;
765
- themeColor: string;
766
736
  };
767
737
  }>;
768
738
  jobs: {
@@ -1246,19 +1216,6 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
1246
1216
  tags: components["schemas"]["PublicBlogTagEmbed"][];
1247
1217
  }>>;
1248
1218
  };
1249
- legal: {
1250
- retrieve(type: LegalPageType, options?: FetchOptions): Promise<{
1251
- object: "legal_page";
1252
- type: string;
1253
- title: string;
1254
- content: string;
1255
- contentFormat: "html";
1256
- legalEntity: {
1257
- legalName: string | null;
1258
- address: string | null;
1259
- } | null;
1260
- }>;
1261
- };
1262
1219
  auth: {
1263
1220
  register(body: RegisterBody, options?: FetchOptions): Promise<{
1264
1221
  object: "board_auth_session";
@@ -2110,14 +2067,14 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
2110
2067
  object: "saved_job";
2111
2068
  jobId: string;
2112
2069
  savedAt: string;
2113
- job: components["schemas"]["PublicJob"];
2070
+ job: components["schemas"]["PublicJobCard"];
2114
2071
  }>>;
2115
2072
  save(body: SaveJobBody, query?: Record<string, never>, options?: FetchOptions): Promise<{
2116
2073
  id: string;
2117
2074
  object: "saved_job";
2118
2075
  jobId: string;
2119
2076
  savedAt: string;
2120
- job: components["schemas"]["PublicJob"];
2077
+ job: components["schemas"]["PublicJobCard"];
2121
2078
  }>;
2122
2079
  unsave(jobId: string, query?: Record<string, never>, options?: FetchOptions): Promise<void>;
2123
2080
  };
@@ -2348,16 +2305,6 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
2348
2305
  label: string;
2349
2306
  }>>;
2350
2307
  };
2351
- suggestions: {
2352
- list(query?: SuggestionsListQuery, options?: FetchOptions): Promise<ListEnvelope<{
2353
- object: "taxonomy_term";
2354
- id: string;
2355
- type: "category" | "skill";
2356
- sourceSlug: string;
2357
- canonicalSlug: string;
2358
- displayName: string;
2359
- }>>;
2360
- };
2361
2308
  places: {
2362
2309
  list(query?: PlacesListQuery, options?: FetchOptions): Promise<ListEnvelope<{
2363
2310
  object: "place";
@@ -3020,4 +2967,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
3020
2967
  };
3021
2968
  type BoardSdk = ReturnType<typeof createBoardClient>;
3022
2969
 
3023
- export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, type LegalEntity, type LegalPageType, ListEnvelope, Logger, type LoginBody, type LogoutBody, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicLegalPage, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type SuggestionsListQuery, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
2970
+ export { type AccessCheckoutBody, type AccessCheckoutSession, type AccessCheckoutSessionState, type AccessGrant, type AccessPortalBody, type AccessPortalSession, type AddApplicantNoteBody, type Alert, type AlertBody, type Application, type ApplicationsListQuery, type ApplyAction, type ApplyBody, Awaitable, BOARD_API_ERROR_CODES, type Block, type BlockStatus, type BlockUserBody, type BlockedUser, BlogPostsListQuery, BlogSearchBody, BlogSimilarQuery, type BoardAccessGrant, BoardApiError, type BoardApiErrorCode, type BoardAuthSession, BoardClient, BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type BulkMoveApplicantsBody, type BulkRejectApplicantsBody, type CandidateAvatar, type CandidateEducation, type CandidateExperience, type CandidateLanguage, type CandidateProfile, type CandidateSkill, type ClaimableCompany, CompaniesListQuery, CompaniesSearchBody, CompanyJobsListQuery, CompanyListEnvelope, CompanyMarketsListQuery, type CompanyMembership, CompanySimilarQuery, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateEducationBody, type CreateEmployerJobBody, type CreateExperienceBody, type CreateJobPostingInput, type CreatePipelineStageBody, type EditMessageBody, type EmbedJobsQuery, type EmployerApplicant, type EmployerBillingOption, type EmployerCheckout, type EmployerCheckoutBody, type EmployerCompany, type EmployerCompanySearchQuery, type EmployerJob, type EmployerJobStat, type EmployerJobStatsPoint, type EmployerJobStatsTimeseriesQuery, type EmployerJobSummary, type EmployerJobsListQuery, type EmployerPipeline, type EmployerPipelineQuery, type EmployerPipelineStage, type EmployerProfileStats, type EmployerProfileViewsPoint, type EmployerProfileViewsTimeseriesQuery, EmploymentType, FetchOptions, type FindExistingConversationQuery, type ForgotPasswordBody, type HandleAvailability, type JobAlertConfirmation, type JobAlertDeletePreferenceInput, type JobAlertFiltersInput, type JobAlertFrequency, type JobAlertManageQuery, type JobAlertManageResult, type JobAlertManageState, type JobAlertManageTokenInput, type JobAlertPreference, type JobAlertRemoteOption, type JobAlertResendResult, type JobAlertStoredFilters, type JobAlertSubscribeInput, type JobAlertSubscription, type JobAlertUpdatePreferenceInput, JobCardListEnvelope, JobCardSearchEnvelope, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, JobsListQuery, JobsSearchBody, JobsSimilarQuery, ListEnvelope, Logger, type LoginBody, type LogoutBody, type Message, type ModerationReport, type MoveApplicantStageBody, type NotificationPreference, type OAuthAuthorizationQuery, type OAuthAuthorizationUrl, type OAuthExchangeBody, type OAuthProvider, type Paginator, type PaywallOffer, type PaywallOfferListEnvelope, type PlacesListQuery, type Plan, type PlanListEnvelope, type PlansListQuery, type PublicPlace, type PublicTaxonomyTerm, type ReadReceipt, type RedirectResolution, type RefreshBody, type RegisterBody, RemoteOption, type RemotePermitTaxonomyEntry, type ReorderPipelineStagesBody, type ReplyBody, type ReportBody, type RequestMagicLinkBody, type ResetPasswordBody, type Resume, type ResumeUploadOptions, SDK_VERSION, SalaryDetailQuery, type SalesLedPlan, type SalesLedPlanListEnvelope, type SaveJobBody, type SavedJob, type SavedJobsListQuery, SearchEnvelope, SearchSuggestQuery, type SendWorkEmailBody, Seniority, type StartAboutApplicationBody, type StartConversationBody, StorageMode, type TalentAccess, type TalentDirectoryEntry, type TalentDirectoryListEnvelope, type TalentDirectoryQuery, type TalentProfile, type TaxonomyGeo, type TaxonomyListQuery, type TaxonomyResolution, type ThreadMessagesQuery, type UnreadCount, type UnsubscribeBody, type UpdateApplicationFactsBody, type UpdateCandidateProfileBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };
package/dist/index.js CHANGED
@@ -312,7 +312,7 @@ async function clearSession(storage) {
312
312
  }
313
313
 
314
314
  // src/version.ts
315
- var SDK_VERSION = "3.2.0";
315
+ var SDK_VERSION = "4.0.0";
316
316
 
317
317
  // src/client.ts
318
318
  function isRawBody(body) {
@@ -1114,28 +1114,6 @@ function jobsNamespace(client) {
1114
1114
  };
1115
1115
  }
1116
1116
 
1117
- // src/namespaces/legal.ts
1118
- function legalNamespace(client) {
1119
- return {
1120
- /**
1121
- * Retrieve a board legal/about page — owner-authored prose as portable HTML
1122
- * (`privacy-policy` / `terms-of-service` / `cookie-policy` / `about`) plus,
1123
- * for `impressum`, structured legal-entity facts. The starter authors the
1124
- * layout, breadcrumb labels, and JSON-LD. `impressum` throws
1125
- * `board_page_not_found` (404) when the board has not enabled it.
1126
- *
1127
- * @example
1128
- * const { title, content } = await board.legal.retrieve('privacy-policy');
1129
- */
1130
- retrieve(type, options) {
1131
- return client.fetch(
1132
- `/legal/${encodeURIComponent(type)}`,
1133
- options
1134
- );
1135
- }
1136
- };
1137
- }
1138
-
1139
1117
  // src/namespaces/me.ts
1140
1118
  function meNamespace(client) {
1141
1119
  return {
@@ -2621,12 +2599,18 @@ function salariesNamespace(client) {
2621
2599
  function searchNamespace(client) {
2622
2600
  return {
2623
2601
  /**
2624
- * GET /search/suggest — federated keyword suggestions (companies +
2625
- * taxonomy terms), one interleaved server-ranked list. Order is the
2626
- * contract: do not re-sort.
2602
+ * GET /search/suggest — federated keyword suggestions (companies,
2603
+ * markets, taxonomy terms), one interleaved server-ranked list. Pass
2604
+ * `types` to restrict kinds; `limit` applies after that filter. Order
2605
+ * is the contract: do not re-sort. Routing is application-side via
2606
+ * `suggestionPath` from `@cavuno/board/paths`.
2627
2607
  *
2628
2608
  * @example
2629
- * const { items } = await board.search.suggest({ q: 'acme', limit: 10 });
2609
+ * const { items } = await board.search.suggest({
2610
+ * q: 'acme',
2611
+ * limit: 10,
2612
+ * types: ['company', 'skill'],
2613
+ * });
2630
2614
  */
2631
2615
  suggest(query, options) {
2632
2616
  return client.fetch("/search/suggest", {
@@ -2719,14 +2703,6 @@ function taxonomyNamespace(client) {
2719
2703
  );
2720
2704
  }
2721
2705
  },
2722
- suggestions: {
2723
- list(query, options) {
2724
- return client.fetch("/suggestions", {
2725
- ...options,
2726
- query
2727
- });
2728
- }
2729
- },
2730
2706
  places: {
2731
2707
  ...taxonomyResolver(client, "places"),
2732
2708
  /**
@@ -2853,7 +2829,6 @@ function createBoardClient(options) {
2853
2829
  embed: embedNamespace(client),
2854
2830
  companies: companiesNamespace(client),
2855
2831
  blog: blogNamespace(client),
2856
- legal: legalNamespace(client),
2857
2832
  auth: authNamespace(client),
2858
2833
  me: meNamespace(client),
2859
2834
  password: passwordNamespace(client),
package/dist/index.mjs CHANGED
@@ -39,7 +39,7 @@ function toSearchParams(query) {
39
39
  }
40
40
 
41
41
  // src/version.ts
42
- var SDK_VERSION = "3.2.0";
42
+ var SDK_VERSION = "4.0.0";
43
43
 
44
44
  // src/client.ts
45
45
  function isRawBody(body) {
@@ -841,28 +841,6 @@ function jobsNamespace(client) {
841
841
  };
842
842
  }
843
843
 
844
- // src/namespaces/legal.ts
845
- function legalNamespace(client) {
846
- return {
847
- /**
848
- * Retrieve a board legal/about page — owner-authored prose as portable HTML
849
- * (`privacy-policy` / `terms-of-service` / `cookie-policy` / `about`) plus,
850
- * for `impressum`, structured legal-entity facts. The starter authors the
851
- * layout, breadcrumb labels, and JSON-LD. `impressum` throws
852
- * `board_page_not_found` (404) when the board has not enabled it.
853
- *
854
- * @example
855
- * const { title, content } = await board.legal.retrieve('privacy-policy');
856
- */
857
- retrieve(type, options) {
858
- return client.fetch(
859
- `/legal/${encodeURIComponent(type)}`,
860
- options
861
- );
862
- }
863
- };
864
- }
865
-
866
844
  // src/namespaces/me.ts
867
845
  function meNamespace(client) {
868
846
  return {
@@ -2348,12 +2326,18 @@ function salariesNamespace(client) {
2348
2326
  function searchNamespace(client) {
2349
2327
  return {
2350
2328
  /**
2351
- * GET /search/suggest — federated keyword suggestions (companies +
2352
- * taxonomy terms), one interleaved server-ranked list. Order is the
2353
- * contract: do not re-sort.
2329
+ * GET /search/suggest — federated keyword suggestions (companies,
2330
+ * markets, taxonomy terms), one interleaved server-ranked list. Pass
2331
+ * `types` to restrict kinds; `limit` applies after that filter. Order
2332
+ * is the contract: do not re-sort. Routing is application-side via
2333
+ * `suggestionPath` from `@cavuno/board/paths`.
2354
2334
  *
2355
2335
  * @example
2356
- * const { items } = await board.search.suggest({ q: 'acme', limit: 10 });
2336
+ * const { items } = await board.search.suggest({
2337
+ * q: 'acme',
2338
+ * limit: 10,
2339
+ * types: ['company', 'skill'],
2340
+ * });
2357
2341
  */
2358
2342
  suggest(query, options) {
2359
2343
  return client.fetch("/search/suggest", {
@@ -2446,14 +2430,6 @@ function taxonomyNamespace(client) {
2446
2430
  );
2447
2431
  }
2448
2432
  },
2449
- suggestions: {
2450
- list(query, options) {
2451
- return client.fetch("/suggestions", {
2452
- ...options,
2453
- query
2454
- });
2455
- }
2456
- },
2457
2433
  places: {
2458
2434
  ...taxonomyResolver(client, "places"),
2459
2435
  /**
@@ -2550,7 +2526,6 @@ function createBoardClient(options) {
2550
2526
  embed: embedNamespace(client),
2551
2527
  companies: companiesNamespace(client),
2552
2528
  blog: blogNamespace(client),
2553
- legal: legalNamespace(client),
2554
2529
  auth: authNamespace(client),
2555
2530
  me: meNamespace(client),
2556
2531
  password: passwordNamespace(client),
@@ -1,4 +1,4 @@
1
- import { S as Schemas } from './_spec-nkWAraS0.js';
1
+ import { S as Schemas } from './_spec-GVe6WAfT.mjs';
2
2
 
3
3
  /**
4
4
  * Optional pagination metadata returned by Board API list operations.
@@ -36,8 +36,8 @@ type PublicJob = Schemas['PublicJob'];
36
36
  type PublicJobCard = Schemas['PublicJobCard'];
37
37
  /**
38
38
  * A job's opaque, display-only custom-field values, keyed by each
39
- * field's `key`. Resolve labels via the board's `CustomFieldDefinition`s
40
- * (`board.context().customFields`).
39
+ * field's `key`. Resolve labels via the board's job `CustomFieldDefinition`s
40
+ * (`board.context().customFields.job`).
41
41
  */
42
42
  type CustomFieldValues = PublicJob['customFieldValues'];
43
43
  type CustomFieldValue = CustomFieldValues[string];
@@ -104,4 +104,4 @@ type JobsSimilarQuery = {
104
104
  };
105
105
  type JobsSearchBody = Schemas['PublicSearchJobsBody'];
106
106
 
107
- export type { CustomFieldValues as C, EmploymentType as E, JobSort as J, ListEnvelope as L, OfficeLocation as O, PublicJob as P, RemoteOption as R, Seniority as S, PublicJobCard as a, JobsListQuery as b, JobCardListEnvelope as c, JobsSearchBody as d, JobCardSearchEnvelope as e, JobsSimilarQuery as f, SearchEnvelope as g, CustomFieldValue as h, EducationRequirement as i, JobCatalogPagination as j, JobCompany as k, OffsetPagination as l, RelatedSearch as m, RemotePermit as n, RemoteTimezone as o, StorefrontPagination as p };
107
+ export type { CustomFieldValues as C, EmploymentType as E, JobSort as J, ListEnvelope as L, OfficeLocation as O, PublicJob as P, RemoteOption as R, Seniority as S, JobsListQuery as a, JobCardListEnvelope as b, JobsSearchBody as c, JobCardSearchEnvelope as d, JobsSimilarQuery as e, SearchEnvelope as f, CustomFieldValue as g, EducationRequirement as h, JobCatalogPagination as i, JobCompany as j, OffsetPagination as k, PublicJobCard as l, RelatedSearch as m, RemotePermit as n, RemoteTimezone as o, StorefrontPagination as p };
@@ -1,4 +1,4 @@
1
- import { S as Schemas } from './_spec-nkWAraS0.mjs';
1
+ import { S as Schemas } from './_spec-GVe6WAfT.js';
2
2
 
3
3
  /**
4
4
  * Optional pagination metadata returned by Board API list operations.
@@ -36,8 +36,8 @@ type PublicJob = Schemas['PublicJob'];
36
36
  type PublicJobCard = Schemas['PublicJobCard'];
37
37
  /**
38
38
  * A job's opaque, display-only custom-field values, keyed by each
39
- * field's `key`. Resolve labels via the board's `CustomFieldDefinition`s
40
- * (`board.context().customFields`).
39
+ * field's `key`. Resolve labels via the board's job `CustomFieldDefinition`s
40
+ * (`board.context().customFields.job`).
41
41
  */
42
42
  type CustomFieldValues = PublicJob['customFieldValues'];
43
43
  type CustomFieldValue = CustomFieldValues[string];
@@ -104,4 +104,4 @@ type JobsSimilarQuery = {
104
104
  };
105
105
  type JobsSearchBody = Schemas['PublicSearchJobsBody'];
106
106
 
107
- export type { CustomFieldValues as C, EmploymentType as E, JobSort as J, ListEnvelope as L, OfficeLocation as O, PublicJob as P, RemoteOption as R, Seniority as S, PublicJobCard as a, JobsListQuery as b, JobCardListEnvelope as c, JobsSearchBody as d, JobCardSearchEnvelope as e, JobsSimilarQuery as f, SearchEnvelope as g, CustomFieldValue as h, EducationRequirement as i, JobCatalogPagination as j, JobCompany as k, OffsetPagination as l, RelatedSearch as m, RemotePermit as n, RemoteTimezone as o, StorefrontPagination as p };
107
+ export type { CustomFieldValues as C, EmploymentType as E, JobSort as J, ListEnvelope as L, OfficeLocation as O, PublicJob as P, RemoteOption as R, Seniority as S, JobsListQuery as a, JobCardListEnvelope as b, JobsSearchBody as c, JobCardSearchEnvelope as d, JobsSimilarQuery as e, SearchEnvelope as f, CustomFieldValue as g, EducationRequirement as h, JobCatalogPagination as i, JobCompany as j, OffsetPagination as k, PublicJobCard as l, RelatedSearch as m, RemotePermit as n, RemoteTimezone as o, StorefrontPagination as p };