Helper packages
Complete export inventory for formatting, filters, SEO, sitemap, paths, server, and skill subpaths.
A
JThe SDK publishes framework-neutral helper entry points. This page lists every public value and type on each helper subpath in version 1.34.0. Use your installed TypeScript declarations as the final authority after an upgrade.
Core helper exports
The root @cavuno/board entry exports the client plus cross-namespace helpers:
- Errors:
BOARD_API_ERROR_CODES,BoardApiError,isBoardApiError,isBoardPasswordRequired,isConflict,isForbidden,isNotFound,isRateLimited,isSignInMethodUnavailable,isSsoBrowserMismatch,isUnauthorized,isValidationError, and typesBoardApiErrorCode,AvailableSignInMethods,BuiltInSignInMethod. - Sign-in completion:
parseOAuthCompletion,ssoLinkProofBindingStore,SIGN_IN_REDIRECT_ERROR_CODES,SSO_LINK_PROOF_BINDING_TTL_MS, and typesOAuthCompletion,SignInRedirectErrorCode,SignInRole,SsoLinkProofBindingStore,BindingStorage. - Storage keys:
ACCESS_TOKEN_KEY,BOARD_ACCESS_GRANT_KEY,REFRESH_TOKEN_KEY. - Pagination:
paginateand typePaginator. - Version:
SDK_VERSION. - Messaging derivations:
isColdRule,isOwnMessage,lastOwnMessageId. - Apply derivations:
isSafeApplicationUrl,resolveApplyAction, and typeApplyAction. - Client values and types:
createBoardClient,BoardClient,BoardSdk,CreateBoardClientOptions,BoardRequest,FetchOptions,Logger,Awaitable,CustomStorage, andStorageMode.
Resource request and response types are exported from the root and documented on their namespace pages.
@cavuno/board/format
Board-language display derivations for contract and data-shaping helpers. Label-producing helpers take board.context().language as their leading argument.
Values:
formatDate,formatMonthYear,formatPublishedRelativeDate.formatSalaryRange.resolveCustomFieldDisplay,COUNTRY_CODES,countryOptions.formatSalaryStat,formatSalaryStatRange,normalizeWebsiteUrl,buildJobBreadcrumbs.
Types (checked against the published type surface):
Chrome copy (uiCopy, display-label words, salary lexicon) is application-owned and is not exported from the SDK (ADR-0104). Own it in application messages or code.
@cavuno/board/filters
Values:
- Vocabularies:
REMOTE_OPTIONS,EMPLOYMENT_TYPES,SENIORITIES,JOB_SORTS,DEFAULT_SORT. - Parsing:
parseSeniority,parseListingFilters.
Display labels for seniority and sort options are application-owned (not exported).
Type: ListingFilters.
The parsers accept public URL input and drop unsupported filter values instead of throwing.
@cavuno/board/seo
Values:
- Blog:
createAuthorProfileJsonLd,createBlogArticleJsonLd. - Breadcrumbs:
buildJobBreadcrumbs,createBreadcrumbJsonLd. - Jobs:
ALL_COUNTRY_CODES,createJobPostingJsonLd,normalizeWebsiteUrl. - Listings:
listingHead(caller suppliestitleanddescription),listingJsonLd. - Salaries:
buildSalaryFaq(returns FAQ entry kinds + values; app composes prose; passcurrency),companyCategorySalaryJsonLd,companySalaryJsonLd(ItemList of categories),crossAxisSalaryJsonLd,faqJsonLd,formatSalaryStat,formatSalaryStatRange,itemListJsonLd,locationSalaryJsonLd(ItemList of top categories),SENIORITY_ORDER,skillSalaryJsonLd,sortBySeniority,titleSalaryJsonLd. PassseniorityName({ seniority, entity })for finished per-seniority distribution names (app owns word order);locationSalaryJsonLd/companySalaryJsonLdrequireoccupationUrl.
Types: ArticleJsonLdPost, BreadcrumbItemInput, JobBreadcrumb, JsonLdBoard, JsonLdObject, ListingHeadOptions, FaqItem, SalaryFaqEntry, SalaryJsonLdOptions, SalaryOccupationListOptions.
These helpers return plain objects or head descriptors. Your framework owns the final <meta>, <link>, and safely serialized <script type="application/ld+json"> elements.
@cavuno/board/seo-files
Byte-identical crawler and identity files for hosted boards, the dispatch Worker, and self-deployed frontends. This entry is isomorphic and has no runtime imports.
Values:
- Cache and content-type constants:
SEO_FILE_CONTENT_TYPE,ROBOTS_CACHE_CONTROL,ADS_TXT_CACHE_CONTROL,INDEXNOW_CACHE_CONTROL. - Bodies:
robotsBody,robotsResponse,adsTxtResponse,indexNowResponse. - Head descriptor:
googleSiteVerificationMeta.
robotsBody is the hosted robots.txt literal (including the Sitemap: line). Pass sandbox: true to emit the no-crawl sandbox body. Pass listingPaths: { jobs, companies, talent } when your board uses its own URL words (for example /vacatures in place of /jobs); the pagination Disallow rules then use those roots, and any missing or unsafe value keeps the default root. If your board serves other languages under a language prefix, also pass localeListingPaths, a list with one { jobs, companies, talent } entry per language (for example { jobs: '/fr/emplois' }); each safe root adds the same pagination rules after the base-language ones, and a missing, unsafe or repeated root adds nothing. Null or empty adsTxt / indexNowKey return HTTP 404. Pass { method: 'HEAD' } for the same status and headers with an empty body.
@cavuno/board/sitemap
Values:
- Bucket model:
SITEMAP_BUCKETS,SITEMAP_CHUNK_SIZE,MIN_JOBS_PER_INDEXED_PAGE. - Filenames and chunks:
bucketFilename,parseBucketFilename,chunk. - XML:
xmlEscape,renderUrlset,renderSitemapIndex. - Board walking:
listedBuckets,buildBucketUrls, and thelastModified-preservinglistedBucketEntries,buildBucketEntries.
Types: SitemapBucket, SitemapUrlEntry, SitemapIndexEntry, ListedSitemapBucket.
The walkers (buildBucketUrls, buildBucketEntries, listedBuckets, listedBucketEntries) perform API reads. The filename, chunk, escape, and render helpers are pure.
@cavuno/board/paths
Values:
- Jobs:
jobDetailPath,jobsCategoryPath,jobsSkillPath,jobsLocationPath,jobsLocationCategoryPath,jobsLocationSkillPath. - Companies:
companyPath,companyMarketPath,companySalaryPath. - Salaries:
salaryTitlePath,salarySkillPath,salaryLocationPath. - Blog:
blogPostPath,blogTagPath,blogAuthorPath. - Talent:
talentProfilePath,talentLocationPath. - Suggestions:
suggestionPath(scope-aware resolver; returnsnullwhen the selection is a filter, not a navigation). - Shared:
BOARD_PATHS,boardUrl.
Every path helper returns a leading-slash path. boardUrl adds an origin and removes trailing slashes from that origin.
@cavuno/board/server
Node-runtime-independent server plumbing that accepts and returns strings rather than framework request objects.
Values:
- Session cookies:
SESSION_COOKIE_NAME,sessionCookieName,clearSessionCookie,isExpiringSoon,parseSessionCookie,serializeSessionCookie. - Board-access cookies:
BOARD_ACCESS_COOKIE_NAME,grantCookieName,clearGrantCookie,parseGrantCookie,serializeGrantCookie. - Redirect safety:
currentPathFromReferer,safeRedirectPath. - Refresh coordination:
createSessionRefresher.
Type: BoardSession.
Cookie serializers apply the package’s __Host-, Secure, httpOnly, path, and SameSite contract. createSessionRefresher requires a nostore client and coordinates one in-flight refresh; it does not install automatic retry behavior.
@cavuno/board/skills
This entry is Node-only because it reads the installed package from the filesystem.
Values: resolveFromPackageRoot, loadSkillManifest, loadSkillCorpus.
Types: LoadedSkill, SkillCorpus, SkillManifest, SkillManifestEntry.
resolveFromPackageRoot(relativePath, baseDir?) works from the installed layout. Bundled consumers that relocate the module must pass baseDir.
@cavuno/board/skills/types
Types only: SkillManifest and SkillManifestEntry. Use this subpath in non-Node consumers that need the manifest shape without importing filesystem code.
The package also exports @cavuno/board/skills/* for direct access to shipped skill artifacts named by the manifest.
Verify an import
Run your application typecheck after changing package versions. A missing symbol should fail at the import rather than being replaced with a locally reimplemented fallback.