import { S as Schemas } from './_spec-EgN7VmAI.mjs'; /** * Optional pagination metadata returned by Board API list operations. * These fields are intentionally defined at the public SDK boundary because * individual response schemas expose them inline rather than through a shared * OpenAPI component. */ interface OffsetPagination { count?: number; limit?: number; offset?: number; gatedCount?: number; } /** @deprecated Use `OffsetPagination`. */ type StorefrontPagination = OffsetPagination; /** @deprecated Use `OffsetPagination`. */ type JobCatalogPagination = OffsetPagination; type ListEnvelope = OffsetPagination & { object: 'list'; url: string; hasMore: boolean; /** `null` when `hasMore` is false — always present, never undefined. */ nextCursor: string | null; data: T[]; }; type SearchEnvelope = OffsetPagination & { object: 'search_result'; url: string; hasMore: boolean; nextCursor: string | null; data: T[]; }; type PublicJob = Schemas['PublicJob']; type PublicJobCard = Schemas['PublicJobCard']; /** * A job's opaque, display-only custom-field values, keyed by each * field's `key`. Resolve labels via the board's job `CustomFieldDefinition`s * (`board.context().customFields.job`). */ type CustomFieldValues = PublicJob['customFieldValues']; type CustomFieldValue = CustomFieldValues[string]; type JobCompany = Schemas['JobCompany']; type OfficeLocation = Schemas['JobOfficeLocation']; type RemoteOption = NonNullable; type EmploymentType = NonNullable; type Seniority = NonNullable; /** Candidate-facing result ordering; `relevance` is the default. */ type JobSort = NonNullable; type EducationRequirement = PublicJob['educationRequirements'][number]; type RemotePermit = PublicJob['remotePermits'][number]; type RemoteTimezone = PublicJob['remoteTimezones'][number]; /** * Derived suggestion on a browse list: jobs surface `category` * and `skill` terms; the companies list surfaces `market` terms. */ interface RelatedSearch { type: 'category' | 'skill' | 'market'; slug: string; term: string; count: number; } /** The browse list envelope — `PublicJobCard`s + job catalog pagination + `relatedSearches`. */ type JobCardListEnvelope = ListEnvelope & { relatedSearches?: RelatedSearch[]; }; /** The search envelope — `PublicJobCard`s + job catalog pagination. */ type JobCardSearchEnvelope = SearchEnvelope; type JobsListQuery = { cursor?: string; /** 1–100. */ limit?: number; /** Job catalog page offset; takes precedence over `cursor`. `offset + limit` ≤ 10,000. */ offset?: number; /** Repeated param (up to 10) — OR-matched. Repeat `companyId` per value. */ companyId?: string[]; /** * Company slugs (the public URL identity). Repeat for multiple values * (up to 10). Resolved server-side; unknown slugs are dropped. Combined * with `companyId` as a union. If the provided company filter resolves * to no known companies, the result is empty. */ companySlug?: string[]; remoteOption?: RemoteOption[]; employmentType?: EmploymentType[]; seniority?: Seniority[]; /** Result ordering. Absent ⇒ `relevance` (the featured-ranked browse). */ sort?: JobSort; /** Place slug for a geo radius search; unresolvable slugs are ignored. */ location?: string; /** Radius in km around `location` (10–250; default 50). */ radius?: number; /** Category slug seed (the `/jobs/[keyword]` page) — server resolves it to the English source name; unresolvable → 404. */ category?: string; /** Skill slug seed (the `/jobs/skills/[skill]` page) — server-resolved; unresolvable → 404. */ skill?: string; /** Sparse fieldset (Medusa-style `+field`). Only `'+description'` is supported — adds `description` to each card. */ fields?: string; }; type JobsSimilarQuery = { /** How many similar jobs to return (1–20; default 5). */ limit?: number; }; type JobsSearchBody = Schemas['PublicSearchJobsBody']; 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 };