@cavuno/board 4.4.1 → 4.5.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 (42) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/{_spec-COlkrizX.d.mts → _spec-BJah6GIZ.d.mts} +55 -0
  3. package/dist/{_spec-COlkrizX.d.ts → _spec-BJah6GIZ.d.ts} +55 -0
  4. package/dist/{blog-DO8Yn21_.d.mts → blog-4Owyo4U_.d.mts} +1 -1
  5. package/dist/{blog-CgA_ljHa.d.ts → blog-DJi_1n7W.d.ts} +1 -1
  6. package/dist/{board-JgFR-2UW.d.mts → board-CpR7o9bL.d.mts} +2 -2
  7. package/dist/{board-D51C3gB5.d.ts → board-KDx9U0nw.d.ts} +2 -2
  8. package/dist/{breadcrumbs-_QzN4nEk.d.ts → breadcrumbs-CJ-NpA-V.d.ts} +2 -2
  9. package/dist/{breadcrumbs-zAN2biAq.d.mts → breadcrumbs-DOJH_7nO.d.mts} +2 -2
  10. package/dist/browser/cavuno-board.global.min.js +1 -1
  11. package/dist/{chunk-2ETP5UH4.mjs → chunk-GC5QWN7Y.mjs} +16 -0
  12. package/dist/{chunk-YEAQ3JEI.mjs → chunk-VWGF4I5C.mjs} +143 -4
  13. package/dist/filters.d.mts +2 -2
  14. package/dist/filters.d.ts +2 -2
  15. package/dist/format.d.mts +4 -4
  16. package/dist/format.d.ts +4 -4
  17. package/dist/format.js +15 -2
  18. package/dist/format.mjs +2 -126
  19. package/dist/index.d.mts +75 -12
  20. package/dist/index.d.ts +75 -12
  21. package/dist/index.js +187 -1
  22. package/dist/index.mjs +172 -2
  23. package/dist/{jobs-DOF3QXdq.d.ts → jobs-Ay-V6Q6y.d.ts} +1 -1
  24. package/dist/{jobs-C1Mxty1n.d.mts → jobs-C27qlt6o.d.mts} +1 -1
  25. package/dist/{search-Cx_dsVUb.d.mts → search-CC-rlMgk.d.mts} +1 -1
  26. package/dist/{search-_QDaN6Um.d.ts → search-fG_K9J8x.d.ts} +1 -1
  27. package/dist/seo.d.mts +6 -6
  28. package/dist/seo.d.ts +6 -6
  29. package/dist/seo.js +16 -1
  30. package/dist/seo.mjs +1 -1
  31. package/dist/server.d.mts +5 -5
  32. package/dist/server.d.ts +5 -5
  33. package/dist/server.mjs +1 -1
  34. package/dist/sitemap.d.mts +5 -5
  35. package/dist/sitemap.d.ts +5 -5
  36. package/dist/suggest.d.mts +2 -2
  37. package/dist/suggest.d.ts +2 -2
  38. package/package.json +1 -1
  39. package/skills/cavuno-board-account/SKILL.md +11 -1
  40. package/skills/cavuno-board-companies/SKILL.md +21 -0
  41. package/skills/cavuno-board-seo/SALARY.md +2 -1
  42. package/skills/manifest.json +1 -1
@@ -23,6 +23,11 @@ var BOARD_API_ERROR_CODES = [
23
23
  "board_auth_invalid_token",
24
24
  "board_auth_registration_disabled",
25
25
  "board_auth_token_expired",
26
+ "invalid_current_password",
27
+ "no_password",
28
+ "same_email",
29
+ "email_taken",
30
+ "invalid_token",
26
31
  // Board password gate
27
32
  "board_password_required",
28
33
  "board_password_invalid",
@@ -102,6 +107,17 @@ var BOARD_API_ERROR_CODES = [
102
107
  "employer_not_member",
103
108
  "employer_payment_required",
104
109
  "employer_pipeline_stage_not_found",
110
+ "employer_member_not_found",
111
+ "employer_invite_not_found",
112
+ "not_company_admin",
113
+ "not_company_member",
114
+ "company_deletion_disabled",
115
+ "last_admin",
116
+ "already_member",
117
+ "already_invited",
118
+ "invalid_email",
119
+ "invite_email_mismatch",
120
+ "candidate_role",
105
121
  // Candidate job-access paywall
106
122
  "paywall_already_active",
107
123
  "paywall_disabled",
@@ -20,9 +20,147 @@ function normalizeLocale(language) {
20
20
  }
21
21
  }
22
22
 
23
+ // src/format/salary-range.ts
24
+ var currencyCache = /* @__PURE__ */ new Map();
25
+ function formatAmount(value, language, currencyCode, currencyDisplay = "symbol", notation = "compact") {
26
+ const cacheKey = `${language}:${currencyCode}:${currencyDisplay}:${notation}`;
27
+ let formatter = currencyCache.get(cacheKey);
28
+ if (formatter === void 0) {
29
+ try {
30
+ const options = {
31
+ style: "currency",
32
+ currency: currencyCode,
33
+ currencyDisplay,
34
+ notation
35
+ };
36
+ if (notation === "compact") {
37
+ options.compactDisplay = "short";
38
+ options.maximumFractionDigits = 1;
39
+ options.minimumFractionDigits = 0;
40
+ }
41
+ formatter = new Intl.NumberFormat(language, options);
42
+ } catch {
43
+ formatter = null;
44
+ }
45
+ currencyCache.set(cacheKey, formatter);
46
+ }
47
+ return formatter ? formatter.format(value) : null;
48
+ }
49
+ function formatNumberRange(formatter, min, max) {
50
+ if (typeof formatter.formatRange === "function") {
51
+ try {
52
+ return formatter.formatRange(min, max);
53
+ } catch {
54
+ }
55
+ }
56
+ try {
57
+ return `${formatter.format(min)}\u2013${formatter.format(max)}`;
58
+ } catch {
59
+ return null;
60
+ }
61
+ }
62
+ function formatRange(min, max, language, currencyCode, currencyDisplay = "symbol", notation = "compact") {
63
+ const cacheKey = `${language}:${currencyCode}:${currencyDisplay}:${notation}:range`;
64
+ let formatter = currencyCache.get(cacheKey);
65
+ if (formatter === void 0) {
66
+ try {
67
+ const options = {
68
+ style: "currency",
69
+ currency: currencyCode,
70
+ currencyDisplay,
71
+ notation
72
+ };
73
+ if (notation === "compact") {
74
+ options.compactDisplay = "short";
75
+ options.maximumFractionDigits = 1;
76
+ options.minimumFractionDigits = 0;
77
+ }
78
+ formatter = new Intl.NumberFormat(language, options);
79
+ } catch {
80
+ formatter = null;
81
+ }
82
+ currencyCache.set(cacheKey, formatter);
83
+ }
84
+ if (!formatter) return null;
85
+ return formatNumberRange(formatter, min, max);
86
+ }
87
+ var SALARY_TIMEFRAMES = /* @__PURE__ */ new Set([
88
+ "per_year",
89
+ "per_month",
90
+ "per_week",
91
+ "per_day",
92
+ "per_hour"
93
+ ]);
94
+ function notationForMagnitude(...values) {
95
+ let anyFinite = false;
96
+ for (const v of values) {
97
+ if (v == null || !Number.isFinite(v)) continue;
98
+ anyFinite = true;
99
+ if (Math.abs(v) >= 1e3) return "compact";
100
+ }
101
+ return anyFinite ? "standard" : "compact";
102
+ }
103
+ function formatSalaryRange(language, min, max, timeframe, currency = null, currencyDisplay = "symbol", notation) {
104
+ const minOk = min == null || Number.isFinite(min);
105
+ const maxOk = max == null || Number.isFinite(max);
106
+ if (!minOk || !maxOk) {
107
+ return null;
108
+ }
109
+ if (min == null && max == null) {
110
+ return null;
111
+ }
112
+ const currencyCode = currency?.trim().toUpperCase() || null;
113
+ if (!currencyCode) {
114
+ return null;
115
+ }
116
+ const locale = normalizeLocale(language);
117
+ if (!locale) {
118
+ return null;
119
+ }
120
+ const resolvedNotation = notation ?? notationForMagnitude(min, max);
121
+ const timeframeLabel = typeof timeframe === "string" && SALARY_TIMEFRAMES.has(timeframe) ? timeframe : null;
122
+ if (min != null && max != null) {
123
+ const low = min <= max ? min : max;
124
+ const high = min <= max ? max : min;
125
+ const text2 = low === high ? formatAmount(
126
+ low,
127
+ locale,
128
+ currencyCode,
129
+ currencyDisplay,
130
+ resolvedNotation
131
+ ) : formatRange(
132
+ low,
133
+ high,
134
+ locale,
135
+ currencyCode,
136
+ currencyDisplay,
137
+ resolvedNotation
138
+ );
139
+ return text2 ? { text: text2, timeframe: timeframeLabel, bound: "range" } : null;
140
+ }
141
+ if (min != null) {
142
+ const text2 = formatAmount(
143
+ min,
144
+ locale,
145
+ currencyCode,
146
+ currencyDisplay,
147
+ resolvedNotation
148
+ );
149
+ return text2 ? { text: text2, timeframe: timeframeLabel, bound: "from" } : null;
150
+ }
151
+ const text = formatAmount(
152
+ max,
153
+ locale,
154
+ currencyCode,
155
+ currencyDisplay,
156
+ resolvedNotation
157
+ );
158
+ return text ? { text, timeframe: timeframeLabel, bound: "upTo" } : null;
159
+ }
160
+
23
161
  // src/seo/salary.ts
24
162
  var currencyFormatterCache = /* @__PURE__ */ new Map();
25
- function notationForMagnitude(...values) {
163
+ function notationForMagnitude2(...values) {
26
164
  let anyFinite = false;
27
165
  for (const v of values) {
28
166
  if (v == null || !Number.isFinite(v)) continue;
@@ -60,7 +198,7 @@ function formatSalaryStat(locale, value, currency, notation) {
60
198
  if (!currencyCode) return null;
61
199
  const normalized = normalizeLocale(locale);
62
200
  if (!normalized) return null;
63
- const resolved = notation ?? notationForMagnitude(value);
201
+ const resolved = notation ?? notationForMagnitude2(value);
64
202
  const formatter = getCurrencyFormatter(normalized, currencyCode, resolved);
65
203
  if (!formatter) return null;
66
204
  return formatter.format(value);
@@ -71,13 +209,13 @@ function formatSalaryStatRange(locale, min, max, currency, notation) {
71
209
  if (!currencyCode) return null;
72
210
  const normalized = normalizeLocale(locale);
73
211
  if (!normalized) return null;
74
- const resolved = notation ?? notationForMagnitude(min, max);
212
+ const resolved = notation ?? notationForMagnitude2(min, max);
75
213
  const formatter = getCurrencyFormatter(normalized, currencyCode, resolved);
76
214
  if (!formatter) return null;
77
215
  const low = Math.min(min, max);
78
216
  const high = Math.max(min, max);
79
217
  if (low === high) return formatter.format(low);
80
- return formatter.formatRange(low, high);
218
+ return formatNumberRange(formatter, low, high);
81
219
  }
82
220
  var SENIORITY_ORDER = [
83
221
  "entry_level",
@@ -832,6 +970,7 @@ function buildJobBreadcrumbs(job) {
832
970
 
833
971
  export {
834
972
  normalizeLocale,
973
+ formatSalaryRange,
835
974
  formatSalaryStat,
836
975
  formatSalaryStatRange,
837
976
  SENIORITY_ORDER,
@@ -1,5 +1,5 @@
1
- import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-C1Mxty1n.mjs';
2
- import './_spec-COlkrizX.mjs';
1
+ import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-C27qlt6o.mjs';
2
+ import './_spec-BJah6GIZ.mjs';
3
3
 
4
4
  /**
5
5
  * `@cavuno/board/filters` — the canonical listing-filter vocabulary and URL
package/dist/filters.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-DOF3QXdq.js';
2
- import './_spec-COlkrizX.js';
1
+ import { J as JobSort, E as EmploymentType, R as RemoteOption, S as Seniority } from './jobs-Ay-V6Q6y.js';
2
+ import './_spec-BJah6GIZ.js';
3
3
 
4
4
  /**
5
5
  * `@cavuno/board/filters` — the canonical listing-filter vocabulary and URL
package/dist/format.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-zAN2biAq.mjs';
2
- import { C as CustomFieldDefinition } from './board-JgFR-2UW.mjs';
3
- import { C as CustomFieldValues } from './jobs-C1Mxty1n.mjs';
4
- import './_spec-COlkrizX.mjs';
1
+ export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-DOJH_7nO.mjs';
2
+ import { C as CustomFieldDefinition } from './board-CpR7o9bL.mjs';
3
+ import { C as CustomFieldValues } from './jobs-C27qlt6o.mjs';
4
+ import './_spec-BJah6GIZ.mjs';
5
5
 
6
6
  /**
7
7
  * Date display helpers in the board language (required leading parameter,
package/dist/format.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-_QzN4nEk.js';
2
- import { C as CustomFieldDefinition } from './board-D51C3gB5.js';
3
- import { C as CustomFieldValues } from './jobs-DOF3QXdq.js';
4
- import './_spec-COlkrizX.js';
1
+ export { C as CurrencyDisplay, F as FormattedSalaryRange, J as JobBreadcrumb, N as NumberNotation, S as SalaryTimeframeInput, a as SalaryTimeframeValue, b as buildJobBreadcrumbs, f as formatSalaryRange, c as formatSalaryStat, d as formatSalaryStatRange, n as normalizeWebsiteUrl } from './breadcrumbs-CJ-NpA-V.js';
2
+ import { C as CustomFieldDefinition } from './board-KDx9U0nw.js';
3
+ import { C as CustomFieldValues } from './jobs-Ay-V6Q6y.js';
4
+ import './_spec-BJah6GIZ.js';
5
5
 
6
6
  /**
7
7
  * Date display helpers in the board language (required leading parameter,
package/dist/format.js CHANGED
@@ -200,6 +200,19 @@ function formatAmount(value, language, currencyCode, currencyDisplay = "symbol",
200
200
  }
201
201
  return formatter ? formatter.format(value) : null;
202
202
  }
203
+ function formatNumberRange(formatter, min, max) {
204
+ if (typeof formatter.formatRange === "function") {
205
+ try {
206
+ return formatter.formatRange(min, max);
207
+ } catch {
208
+ }
209
+ }
210
+ try {
211
+ return `${formatter.format(min)}\u2013${formatter.format(max)}`;
212
+ } catch {
213
+ return null;
214
+ }
215
+ }
203
216
  function formatRange(min, max, language, currencyCode, currencyDisplay = "symbol", notation = "compact") {
204
217
  const cacheKey = `${language}:${currencyCode}:${currencyDisplay}:${notation}:range`;
205
218
  let formatter = currencyCache.get(cacheKey);
@@ -223,7 +236,7 @@ function formatRange(min, max, language, currencyCode, currencyDisplay = "symbol
223
236
  currencyCache.set(cacheKey, formatter);
224
237
  }
225
238
  if (!formatter) return null;
226
- return formatter.formatRange(min, max);
239
+ return formatNumberRange(formatter, min, max);
227
240
  }
228
241
  var SALARY_TIMEFRAMES = /* @__PURE__ */ new Set([
229
242
  "per_year",
@@ -356,7 +369,7 @@ function formatSalaryStatRange(locale, min, max, currency, notation) {
356
369
  const low = Math.min(min, max);
357
370
  const high = Math.max(min, max);
358
371
  if (low === high) return formatter.format(low);
359
- return formatter.formatRange(low, high);
372
+ return formatNumberRange(formatter, low, high);
360
373
  }
361
374
 
362
375
  // src/seo/job-posting.ts
package/dist/format.mjs CHANGED
@@ -1,10 +1,11 @@
1
1
  import {
2
2
  buildJobBreadcrumbs,
3
+ formatSalaryRange,
3
4
  formatSalaryStat,
4
5
  formatSalaryStatRange,
5
6
  normalizeLocale,
6
7
  normalizeWebsiteUrl
7
- } from "./chunk-YEAQ3JEI.mjs";
8
+ } from "./chunk-VWGF4I5C.mjs";
8
9
  import "./chunk-BGKNXG4H.mjs";
9
10
 
10
11
  // src/format/dates.ts
@@ -132,131 +133,6 @@ function formatMonthYear(locale, dateStr) {
132
133
  }
133
134
  }
134
135
 
135
- // src/format/salary-range.ts
136
- var currencyCache = /* @__PURE__ */ new Map();
137
- function formatAmount(value, language, currencyCode, currencyDisplay = "symbol", notation = "compact") {
138
- const cacheKey = `${language}:${currencyCode}:${currencyDisplay}:${notation}`;
139
- let formatter = currencyCache.get(cacheKey);
140
- if (formatter === void 0) {
141
- try {
142
- const options = {
143
- style: "currency",
144
- currency: currencyCode,
145
- currencyDisplay,
146
- notation
147
- };
148
- if (notation === "compact") {
149
- options.compactDisplay = "short";
150
- options.maximumFractionDigits = 1;
151
- options.minimumFractionDigits = 0;
152
- }
153
- formatter = new Intl.NumberFormat(language, options);
154
- } catch {
155
- formatter = null;
156
- }
157
- currencyCache.set(cacheKey, formatter);
158
- }
159
- return formatter ? formatter.format(value) : null;
160
- }
161
- function formatRange(min, max, language, currencyCode, currencyDisplay = "symbol", notation = "compact") {
162
- const cacheKey = `${language}:${currencyCode}:${currencyDisplay}:${notation}:range`;
163
- let formatter = currencyCache.get(cacheKey);
164
- if (formatter === void 0) {
165
- try {
166
- const options = {
167
- style: "currency",
168
- currency: currencyCode,
169
- currencyDisplay,
170
- notation
171
- };
172
- if (notation === "compact") {
173
- options.compactDisplay = "short";
174
- options.maximumFractionDigits = 1;
175
- options.minimumFractionDigits = 0;
176
- }
177
- formatter = new Intl.NumberFormat(language, options);
178
- } catch {
179
- formatter = null;
180
- }
181
- currencyCache.set(cacheKey, formatter);
182
- }
183
- if (!formatter) return null;
184
- return formatter.formatRange(min, max);
185
- }
186
- var SALARY_TIMEFRAMES = /* @__PURE__ */ new Set([
187
- "per_year",
188
- "per_month",
189
- "per_week",
190
- "per_day",
191
- "per_hour"
192
- ]);
193
- function notationForMagnitude(...values) {
194
- let anyFinite = false;
195
- for (const v of values) {
196
- if (v == null || !Number.isFinite(v)) continue;
197
- anyFinite = true;
198
- if (Math.abs(v) >= 1e3) return "compact";
199
- }
200
- return anyFinite ? "standard" : "compact";
201
- }
202
- function formatSalaryRange(language, min, max, timeframe, currency = null, currencyDisplay = "symbol", notation) {
203
- const minOk = min == null || Number.isFinite(min);
204
- const maxOk = max == null || Number.isFinite(max);
205
- if (!minOk || !maxOk) {
206
- return null;
207
- }
208
- if (min == null && max == null) {
209
- return null;
210
- }
211
- const currencyCode = currency?.trim().toUpperCase() || null;
212
- if (!currencyCode) {
213
- return null;
214
- }
215
- const locale = normalizeLocale(language);
216
- if (!locale) {
217
- return null;
218
- }
219
- const resolvedNotation = notation ?? notationForMagnitude(min, max);
220
- const timeframeLabel = typeof timeframe === "string" && SALARY_TIMEFRAMES.has(timeframe) ? timeframe : null;
221
- if (min != null && max != null) {
222
- const low = min <= max ? min : max;
223
- const high = min <= max ? max : min;
224
- const text2 = low === high ? formatAmount(
225
- low,
226
- locale,
227
- currencyCode,
228
- currencyDisplay,
229
- resolvedNotation
230
- ) : formatRange(
231
- low,
232
- high,
233
- locale,
234
- currencyCode,
235
- currencyDisplay,
236
- resolvedNotation
237
- );
238
- return text2 ? { text: text2, timeframe: timeframeLabel, bound: "range" } : null;
239
- }
240
- if (min != null) {
241
- const text2 = formatAmount(
242
- min,
243
- locale,
244
- currencyCode,
245
- currencyDisplay,
246
- resolvedNotation
247
- );
248
- return text2 ? { text: text2, timeframe: timeframeLabel, bound: "from" } : null;
249
- }
250
- const text = formatAmount(
251
- max,
252
- locale,
253
- currencyCode,
254
- currencyDisplay,
255
- resolvedNotation
256
- );
257
- return text ? { text, timeframe: timeframeLabel, bound: "upTo" } : null;
258
- }
259
-
260
136
  // src/format/countries.ts
261
137
  var COUNTRY_CODES = [
262
138
  "AD",
package/dist/index.d.mts CHANGED
@@ -1,12 +1,12 @@
1
- import { S as Schemas, c as components } from './_spec-COlkrizX.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-Cx_dsVUb.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-Cx_dsVUb.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-JgFR-2UW.mjs';
5
- export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, l as CompanySalarySummary, C as CustomFieldDefinition, m as CustomFieldOption, n as CustomFieldType, L as LocationSalaryDetail, o as LocationSkillsIndex, p as LocationTitlesIndex, P as PublicBoard, q as PublicBoardAnalytics, r as PublicBoardFeatures, s as PublicCompany, t as PublicCompanyDetail, u as SalaryCompany, v as SalaryLocation, w as SalarySkill, x as SalaryTitle, y as SkillLocationSalary, z as SkillLocationsIndex, S as SkillSalaryDetail, A as TitleLocationSalary, B as TitleLocationsIndex, T as TitleSalaryDetail } from './board-JgFR-2UW.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-C1Mxty1n.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-C1Mxty1n.mjs';
8
- import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-DO8Yn21_.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-DO8Yn21_.mjs';
1
+ import { S as Schemas, c as components } from './_spec-BJah6GIZ.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-CC-rlMgk.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-CC-rlMgk.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-CpR7o9bL.mjs';
5
+ export { a as CompanyCategorySalary, j as CompanyMarket, k as CompanyMarketRef, b as CompanySalary, l as CompanySalarySummary, C as CustomFieldDefinition, m as CustomFieldOption, n as CustomFieldType, L as LocationSalaryDetail, o as LocationSkillsIndex, p as LocationTitlesIndex, P as PublicBoard, q as PublicBoardAnalytics, r as PublicBoardFeatures, s as PublicCompany, t as PublicCompanyDetail, u as SalaryCompany, v as SalaryLocation, w as SalarySkill, x as SalaryTitle, y as SkillLocationSalary, z as SkillLocationsIndex, S as SkillSalaryDetail, A as TitleLocationSalary, B as TitleLocationsIndex, T as TitleSalaryDetail } from './board-CpR7o9bL.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-C27qlt6o.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-C27qlt6o.mjs';
8
+ import { a as BlogPostsListQuery, b as BlogSimilarQuery, c as BlogSearchBody } from './blog-4Owyo4U_.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-4Owyo4U_.mjs';
10
10
 
11
11
  /**
12
12
  * Well-known `<domain>_<snake_reason>` codes the Board API sends, grouped by
@@ -19,7 +19,7 @@ export { B as BlogAuthorEmbed, d as BlogTagEmbed, e as PublicBlogAdjacentPosts,
19
19
  * `unknown_error` is SDK-synthesized when a response carries no parseable
20
20
  * envelope.
21
21
  */
22
- declare const BOARD_API_ERROR_CODES: readonly ["internal_error", "validation_bad_request", "validation_payload_too_large", "rate_limited", "rate_limit_unavailable", "search_unavailable", "too_many_filter_values", "pagination_invalid_cursor", "pagination_offset_too_large", "auth_unauthenticated", "auth_forbidden", "plan_upgrade_required", "unknown_error", "boards_not_found", "board_page_not_found", "board_auth_email_taken", "board_auth_invalid_credentials", "board_auth_invalid_token", "board_auth_registration_disabled", "board_auth_token_expired", "board_password_required", "board_password_invalid", "jobs_not_found", "jobs_invalid_filter", "categories_not_found", "skills_not_found", "places_not_found", "companies_not_found", "company_markets_not_found", "company_salary_not_found", "company_category_salary_not_found", "salaries_title_not_found", "salaries_skill_not_found", "salaries_location_not_found", "salaries_title_location_not_found", "salaries_skill_location_not_found", "blog_post_not_found", "blog_author_not_found", "blog_tag_not_found", "talent_not_found", "talent_directory_not_found", "talent_directory_restricted", "job_alert_not_found", "job_alerts_disabled", "candidate_alert_limit_reached", "candidate_alert_not_found", "candidate_entry_not_found", "candidate_handle_taken", "candidate_job_not_found", "resume_invalid_file", "resume_upload_forbidden", "applications_external_apply_only", "applications_guest_not_allowed", "applications_job_not_found", "applications_not_found", "applications_resume_invalid_file", "applications_unprocessable", "messaging_application_not_found", "messaging_application_not_linked", "messaging_blocked", "messaging_cannot_block_self", "messaging_cold_rule", "messaging_conversation_not_found", "messaging_disabled", "messaging_edit_window_expired", "messaging_message_deleted", "messaging_message_not_found", "messaging_not_author", "messaging_not_participant", "messaging_not_permitted", "messaging_not_recipient", "messaging_rate_limited", "messaging_recipient_not_found", "messaging_recipient_not_open", "messaging_unsend_window_expired", "employer_applicant_not_found", "employer_ats_unprocessable", "employer_checkout_failed", "employer_company_exists", "employer_company_name_taken", "employer_company_not_found", "employer_job_not_found", "employer_job_slug_taken", "employer_jobs_quota_exceeded", "employer_not_member", "employer_payment_required", "employer_pipeline_stage_not_found", "paywall_already_active", "paywall_disabled", "paywall_invalid_checkout_session", "paywall_no_candidate_profile", "paywall_no_recurring_subscription", "paywall_offer_not_found", "job_posting_logo_lookup_unavailable", "job_posting_logo_not_found", "job_posting_rejected"];
22
+ declare const BOARD_API_ERROR_CODES: readonly ["internal_error", "validation_bad_request", "validation_payload_too_large", "rate_limited", "rate_limit_unavailable", "search_unavailable", "too_many_filter_values", "pagination_invalid_cursor", "pagination_offset_too_large", "auth_unauthenticated", "auth_forbidden", "plan_upgrade_required", "unknown_error", "boards_not_found", "board_page_not_found", "board_auth_email_taken", "board_auth_invalid_credentials", "board_auth_invalid_token", "board_auth_registration_disabled", "board_auth_token_expired", "invalid_current_password", "no_password", "same_email", "email_taken", "invalid_token", "board_password_required", "board_password_invalid", "jobs_not_found", "jobs_invalid_filter", "categories_not_found", "skills_not_found", "places_not_found", "companies_not_found", "company_markets_not_found", "company_salary_not_found", "company_category_salary_not_found", "salaries_title_not_found", "salaries_skill_not_found", "salaries_location_not_found", "salaries_title_location_not_found", "salaries_skill_location_not_found", "blog_post_not_found", "blog_author_not_found", "blog_tag_not_found", "talent_not_found", "talent_directory_not_found", "talent_directory_restricted", "job_alert_not_found", "job_alerts_disabled", "candidate_alert_limit_reached", "candidate_alert_not_found", "candidate_entry_not_found", "candidate_handle_taken", "candidate_job_not_found", "resume_invalid_file", "resume_upload_forbidden", "applications_external_apply_only", "applications_guest_not_allowed", "applications_job_not_found", "applications_not_found", "applications_resume_invalid_file", "applications_unprocessable", "messaging_application_not_found", "messaging_application_not_linked", "messaging_blocked", "messaging_cannot_block_self", "messaging_cold_rule", "messaging_conversation_not_found", "messaging_disabled", "messaging_edit_window_expired", "messaging_message_deleted", "messaging_message_not_found", "messaging_not_author", "messaging_not_participant", "messaging_not_permitted", "messaging_not_recipient", "messaging_rate_limited", "messaging_recipient_not_found", "messaging_recipient_not_open", "messaging_unsend_window_expired", "employer_applicant_not_found", "employer_ats_unprocessable", "employer_checkout_failed", "employer_company_exists", "employer_company_name_taken", "employer_company_not_found", "employer_job_not_found", "employer_job_slug_taken", "employer_jobs_quota_exceeded", "employer_not_member", "employer_payment_required", "employer_pipeline_stage_not_found", "employer_member_not_found", "employer_invite_not_found", "not_company_admin", "not_company_member", "company_deletion_disabled", "last_admin", "already_member", "already_invited", "invalid_email", "invite_email_mismatch", "candidate_role", "paywall_already_active", "paywall_disabled", "paywall_invalid_checkout_session", "paywall_no_candidate_profile", "paywall_no_recurring_subscription", "paywall_offer_not_found", "job_posting_logo_lookup_unavailable", "job_posting_logo_not_found", "job_posting_rejected"];
23
23
  /**
24
24
  * The known code set plus open string — new codes ship additively within v1,
25
25
  * so exhaustive narrowing is intentionally impossible.
@@ -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 = "4.4.1";
145
+ declare const SDK_VERSION = "4.5.0";
146
146
 
147
147
  type SavedJob = Schemas['SavedJob'];
148
148
  type SavedJobsListQuery = {
@@ -258,6 +258,24 @@ type CreateCompanyBody = Schemas['CreateCompanyBody'];
258
258
  type UpdateEmployerCompanyBody = Schemas['UpdateEmployerCompanyBody'];
259
259
  type SendWorkEmailBody = Schemas['SendWorkEmailBody'];
260
260
  type ConfirmWorkEmailBody = Schemas['ConfirmWorkEmailBody'];
261
+ /** Body for `board.me.updatePassword`. */
262
+ type UpdatePasswordBody = Schemas['UpdatePasswordBody'];
263
+ /** Body for `board.me.requestEmailChange`. */
264
+ type RequestEmailChangeBody = Schemas['RequestEmailChangeBody'];
265
+ /** Body for `board.me.confirmEmailChange`. */
266
+ type ConfirmEmailChangeBody = Schemas['ConfirmEmailChangeBody'];
267
+ /** One approved company member from `board.me.companies.listMembers`. */
268
+ type CompanyMember = Schemas['CompanyMember'];
269
+ /** Body for `board.me.companies.updateMemberRole`. */
270
+ type UpdateCompanyMemberRoleBody = Schemas['UpdateCompanyMemberRoleBody'];
271
+ /** One pending company member invite from `board.me.companies.listInvites`. */
272
+ type CompanyMemberInvite = Schemas['CompanyMemberInvite'];
273
+ /** Body for `board.me.companies.createInvite`. */
274
+ type CreateCompanyMemberInviteBody = Schemas['CreateCompanyMemberInviteBody'];
275
+ /** Result of `board.me.acceptInvite`. */
276
+ type CompanyMemberInviteAcceptance = Schemas['CompanyMemberInviteAcceptance'];
277
+ /** Body for `board.me.acceptInvite`. */
278
+ type AcceptCompanyMemberInviteBody = Schemas['AcceptCompanyMemberInviteBody'];
261
279
  /**
262
280
  * The viewer's per-employer talent entitlement from
263
281
  * `board.me.talentAccess.retrieve` — the talent-CTA signal (sourced from the
@@ -830,6 +848,7 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
830
848
  salaryCurrency: string | null;
831
849
  salaryTimeframe: string | null;
832
850
  isFeatured: boolean;
851
+ isSponsored: boolean;
833
852
  summary: string | null;
834
853
  locationLabel: string | null;
835
854
  company: {
@@ -930,6 +949,7 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
930
949
  salaryCurrency: string | null;
931
950
  salaryTimeframe: string | null;
932
951
  isFeatured: boolean;
952
+ isSponsored: boolean;
933
953
  summary: string | null;
934
954
  locationLabel: string | null;
935
955
  company: {
@@ -1327,8 +1347,22 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
1327
1347
  email: string;
1328
1348
  displayName: string | null;
1329
1349
  emailVerified: boolean;
1350
+ hasPassword: boolean;
1330
1351
  }>;
1331
1352
  delete(options?: FetchOptions): Promise<void>;
1353
+ updatePassword(body: UpdatePasswordBody, options?: FetchOptions): Promise<{
1354
+ object: "board_auth_session";
1355
+ accessToken: string;
1356
+ refreshToken: string;
1357
+ expiresAt: number;
1358
+ boardUser: components["schemas"]["BoardUser"];
1359
+ }>;
1360
+ requestEmailChange(body: RequestEmailChangeBody, options?: FetchOptions): Promise<void>;
1361
+ confirmEmailChange(body: ConfirmEmailChangeBody, options?: FetchOptions): Promise<void>;
1362
+ acceptInvite(body: AcceptCompanyMemberInviteBody, options?: FetchOptions): Promise<{
1363
+ object: "company_member_invite_acceptance";
1364
+ companySlug: string;
1365
+ }>;
1332
1366
  profile: {
1333
1367
  retrieve(query?: Record<string, never>, options?: FetchOptions): Promise<{
1334
1368
  id: string;
@@ -1575,6 +1609,35 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
1575
1609
  facebookUrl: string | null;
1576
1610
  logoUrl: string | null;
1577
1611
  }>;
1612
+ delete(slug: string, options?: FetchOptions): Promise<void>;
1613
+ listMembers(slug: string, options?: FetchOptions): Promise<ListEnvelope<{
1614
+ id: string;
1615
+ object: "company_member";
1616
+ boardUserId: string;
1617
+ displayName: string | null;
1618
+ email: string;
1619
+ role: "admin" | "member";
1620
+ approvedBy: string | null;
1621
+ createdAt: string;
1622
+ }>>;
1623
+ updateMemberRole(slug: string, memberId: string, body: UpdateCompanyMemberRoleBody, options?: FetchOptions): Promise<void>;
1624
+ removeMember(slug: string, memberId: string, options?: FetchOptions): Promise<void>;
1625
+ leave(slug: string, options?: FetchOptions): Promise<void>;
1626
+ listInvites(slug: string, options?: FetchOptions): Promise<ListEnvelope<{
1627
+ id: string;
1628
+ object: "company_member_invite";
1629
+ email: string;
1630
+ createdAt: string;
1631
+ expiresAt: string;
1632
+ }>>;
1633
+ createInvite(slug: string, body: CreateCompanyMemberInviteBody, options?: FetchOptions): Promise<{
1634
+ id: string;
1635
+ object: "company_member_invite";
1636
+ email: string;
1637
+ createdAt: string;
1638
+ expiresAt: string;
1639
+ }>;
1640
+ revokeInvite(slug: string, inviteId: string, options?: FetchOptions): Promise<void>;
1578
1641
  uploadLogo(slug: string, file: Blob, options?: FetchOptions): Promise<{
1579
1642
  id: string;
1580
1643
  object: "employer_company";
@@ -3051,4 +3114,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
3051
3114
  };
3052
3115
  type BoardSdk = ReturnType<typeof createBoardClient>;
3053
3116
 
3054
- 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 MarketingConsent, 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 };
3117
+ export { type AcceptCompanyMemberInviteBody, 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 CompanyMember, type CompanyMemberInvite, type CompanyMemberInviteAcceptance, type CompanyMembership, CompanySimilarQuery, type ConfirmEmailChangeBody, type ConfirmWorkEmailBody, type ConsumeMagicLinkBody, type Conversation, type ConversationArchive, type ConversationDetail, type ConversationRef, type ConversationsListQuery, type CreateBoardClientOptions, type CreateCompanyBody, type CreateCompanyMemberInviteBody, 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 MarketingConsent, 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 RequestEmailChangeBody, 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 UpdateCompanyMemberRoleBody, type UpdateEducationBody, type UpdateEmployerCompanyBody, type UpdateEmployerJobBody, type UpdateExperienceBody, type UpdateLanguagesBody, type UpdateNotificationPreferenceBody, type UpdatePasswordBody, type UpdatePipelineStageBody, type UpdateSkillsBody, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isColdRule, isConflict, isForbidden, isNotFound, isOwnMessage, isRateLimited, isSafeApplicationUrl, isUnauthorized, isValidationError, lastOwnMessageId, paginate, resolveApplyAction };