@cavuno/board 1.12.0 → 1.14.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.
package/dist/index.d.mts CHANGED
@@ -891,6 +891,50 @@ interface components {
891
891
  /** @description Free-form location string (e.g. `"Berlin, Germany"`, `"Mountain View, California, USA"`). Mapbox parses + ranks candidates server-side; rejects on low confidence. */
892
892
  query: string;
893
893
  };
894
+ JobPostingBillingCheck: {
895
+ /** @enum {string} */
896
+ object: "job_posting_billing_check";
897
+ hasActiveBilling: boolean;
898
+ };
899
+ JobPostingBillingOptions: {
900
+ /** @enum {string} */
901
+ object: "job_posting_billing_options";
902
+ options: {
903
+ id: string;
904
+ type: string;
905
+ planId: string;
906
+ planName: string;
907
+ planKind: string;
908
+ capacities: {
909
+ key: string;
910
+ total: number;
911
+ used: number;
912
+ remaining: number;
913
+ }[];
914
+ jobsRemaining: number;
915
+ jobsTotal: number;
916
+ featuredRemaining: number;
917
+ featuredTotal: number;
918
+ renewsAt: string | null;
919
+ }[];
920
+ };
921
+ JobPostingBillingOptionsBody: {
922
+ verificationToken: string;
923
+ };
924
+ JobPostingBillingVerification: {
925
+ /** @enum {string} */
926
+ object: "job_posting_billing_verification";
927
+ success: boolean;
928
+ };
929
+ JobPostingCheckBillingBody: {
930
+ /** Format: email */
931
+ email: string;
932
+ };
933
+ JobPostingLogo: {
934
+ /** @enum {string} */
935
+ object: "job_posting_logo";
936
+ publicUrl: string;
937
+ };
894
938
  JobPostingPlan: {
895
939
  /** @enum {string} */
896
940
  object: "job_posting_plan";
@@ -945,6 +989,27 @@ interface components {
945
989
  status: "invoice_sent";
946
990
  jobId: string;
947
991
  };
992
+ JobPostingSendVerificationBody: {
993
+ /** Format: email */
994
+ email: string;
995
+ };
996
+ JobPostingSubscriptionEntitlements: {
997
+ /** @enum {string} */
998
+ object: "job_posting_subscription_entitlements";
999
+ hasSubscription: boolean;
1000
+ subscriptionId: string | null;
1001
+ canFeature: boolean | null;
1002
+ featuredSlotsRemaining: number | null;
1003
+ featuredSlotsTotal: number | null;
1004
+ maxActiveRemaining: number | null;
1005
+ maxActiveTotal: number | null;
1006
+ featureSelectionMode: string | null;
1007
+ };
1008
+ JobPostingSubscriptionEntitlementsBody: {
1009
+ /** Format: email */
1010
+ email: string;
1011
+ planId: string;
1012
+ };
948
1013
  JobSummary: {
949
1014
  /** @description Unique identifier for the object. Use this value as the `{id}` path parameter for the job endpoints (e.g. `GET /v1/jobs/{id}`). */
950
1015
  id: string;
@@ -2686,7 +2751,7 @@ declare function isConflict(e: unknown): e is BoardApiError;
2686
2751
  * constant because the package is platform-neutral and cannot read
2687
2752
  * package.json at runtime.
2688
2753
  */
2689
- declare const SDK_VERSION = "1.12.0";
2754
+ declare const SDK_VERSION = "1.14.0";
2690
2755
 
2691
2756
  type BoardUser = Schemas['BoardUser'];
2692
2757
  type BoardAuthSession = Schemas['BoardAuthSession'];
@@ -2894,6 +2959,15 @@ type CreateJobPostingInput = Schemas['CreateJobPostingBody'];
2894
2959
  * `invoice_sent`. A rejected submission throws a `BoardApiError` instead.
2895
2960
  */
2896
2961
  type JobPostingResult = Schemas['JobPostingResult'];
2962
+ /**
2963
+ * The result of `uploadLogo()` / `fetchLogoByDomain()`: a stored logo whose
2964
+ * `publicUrl` you pass back as `submission.logoUrl` on `create(...)`.
2965
+ */
2966
+ type JobPostingLogoResult = Schemas['JobPostingLogo'];
2967
+ type JobPostingBillingCheck = Schemas['JobPostingBillingCheck'];
2968
+ type JobPostingBillingVerification = Schemas['JobPostingBillingVerification'];
2969
+ type JobPostingBillingOptions = Schemas['JobPostingBillingOptions'];
2970
+ type JobPostingSubscriptionEntitlements = Schemas['JobPostingSubscriptionEntitlements'];
2897
2971
 
2898
2972
  type TaxonomyGeo = Schemas['TaxonomyGeo'];
2899
2973
  type TaxonomyResolution = Schemas['PublicTaxonomyResolution'];
@@ -3600,6 +3674,63 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
3600
3674
  status: "invoice_sent";
3601
3675
  jobId: string;
3602
3676
  }>;
3677
+ uploadLogo(file: Blob, options?: FetchOptions): Promise<{
3678
+ object: "job_posting_logo";
3679
+ publicUrl: string;
3680
+ }>;
3681
+ fetchLogoByDomain(domain: string, options?: FetchOptions): Promise<{
3682
+ object: "job_posting_logo";
3683
+ publicUrl: string;
3684
+ }>;
3685
+ checkBilling(input: {
3686
+ email: string;
3687
+ }, options?: FetchOptions): Promise<{
3688
+ object: "job_posting_billing_check";
3689
+ hasActiveBilling: boolean;
3690
+ }>;
3691
+ sendBillingVerification(input: {
3692
+ email: string;
3693
+ }, options?: FetchOptions): Promise<{
3694
+ object: "job_posting_billing_verification";
3695
+ success: boolean;
3696
+ }>;
3697
+ getBillingOptions(input: {
3698
+ verificationToken: string;
3699
+ }, options?: FetchOptions): Promise<{
3700
+ object: "job_posting_billing_options";
3701
+ options: {
3702
+ id: string;
3703
+ type: string;
3704
+ planId: string;
3705
+ planName: string;
3706
+ planKind: string;
3707
+ capacities: {
3708
+ key: string;
3709
+ total: number;
3710
+ used: number;
3711
+ remaining: number;
3712
+ }[];
3713
+ jobsRemaining: number;
3714
+ jobsTotal: number;
3715
+ featuredRemaining: number;
3716
+ featuredTotal: number;
3717
+ renewsAt: string | null;
3718
+ }[];
3719
+ }>;
3720
+ checkSubscriptionEntitlements(input: {
3721
+ email: string;
3722
+ planId: string;
3723
+ }, options?: FetchOptions): Promise<{
3724
+ object: "job_posting_subscription_entitlements";
3725
+ hasSubscription: boolean;
3726
+ subscriptionId: string | null;
3727
+ canFeature: boolean | null;
3728
+ featuredSlotsRemaining: number | null;
3729
+ featuredSlotsTotal: number | null;
3730
+ maxActiveRemaining: number | null;
3731
+ maxActiveTotal: number | null;
3732
+ featureSelectionMode: string | null;
3733
+ }>;
3603
3734
  };
3604
3735
  salaries: {
3605
3736
  companies: {
@@ -4033,4 +4164,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
4033
4164
  };
4034
4165
  type BoardSdk = ReturnType<typeof createBoardClient>;
4035
4166
 
4036
- export { ACCESS_TOKEN_KEY, type Awaitable, BOARD_ACCESS_GRANT_KEY, type BlogAuthorEmbed, type BlogPostsListQuery, type BlogSearchBody, type BlogSimilarQuery, type BlogTagEmbed, type BoardAccessGrant, BoardApiError, type BoardAuthSession, BoardClient, type BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type CompaniesListQuery, type CompaniesSearchBody, type CompanyJobsListQuery, type CompanyListEnvelope, type CompanyMarket, type CompanyMarketRef, type CompanyMarketsListQuery, type CompanySimilarQuery, type CreateBoardClientOptions, type CreateJobPostingInput, type CustomStorage, type EducationRequirement, type EmbedJobsQuery, type EmploymentType, type FetchOptions, type ForgotPasswordBody, 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, type JobCardListEnvelope, type JobCardSearchEnvelope, type JobCompany, type JobPostingPlan, type JobPostingResult, type JobsListQuery, type JobsSearchBody, type LegalEntity, type LegalPageType, type ListEnvelope, type LocationSalaryDetail, type LocationSkillsIndex, type LocationTitlesIndex, type Logger, type LoginBody, type LogoutBody, type OfficeLocation, type PlacesListQuery, type PublicBlogAdjacentPosts, type PublicBlogAuthor, type PublicBlogPost, type PublicBlogPostSummary, type PublicBlogTag, type PublicBoard, type PublicBoardAnalytics, type PublicBoardFeatures, type PublicBoardTheme, type PublicCompany, type PublicCompanyDetail, type PublicJob, type PublicJobCard, type PublicLegalPage, type PublicPlace, REFRESH_TOKEN_KEY, type RedirectResolution, type RefreshBody, type RegisterBody, type RelatedSearch, type RemoteOption, type RemotePermit, type RemoteTimezone, type ResetPasswordBody, SDK_VERSION, type SalaryCompany, type SalaryDetailQuery, type SalaryLocation, type SalarySkill, type SalaryTitle, type SaveJobBody, type SavedJob, type SavedJobsListQuery, type SearchEnvelope, type Seniority, type SkillLocationSalary, type SkillLocationsIndex, type SkillSalaryDetail, type StorageMode, type StorefrontPagination, type TaxonomyGeo, type TaxonomyResolution, type TitleLocationSalary, type TitleLocationsIndex, type TitleSalaryDetail, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isConflict, isForbidden, isNotFound, isRateLimited, isUnauthorized, isValidationError };
4167
+ export { ACCESS_TOKEN_KEY, type Awaitable, BOARD_ACCESS_GRANT_KEY, type BlogAuthorEmbed, type BlogPostsListQuery, type BlogSearchBody, type BlogSimilarQuery, type BlogTagEmbed, type BoardAccessGrant, BoardApiError, type BoardAuthSession, BoardClient, type BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type CompaniesListQuery, type CompaniesSearchBody, type CompanyJobsListQuery, type CompanyListEnvelope, type CompanyMarket, type CompanyMarketRef, type CompanyMarketsListQuery, type CompanySimilarQuery, type CreateBoardClientOptions, type CreateJobPostingInput, type CustomStorage, type EducationRequirement, type EmbedJobsQuery, type EmploymentType, type FetchOptions, type ForgotPasswordBody, 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, type JobCardListEnvelope, type JobCardSearchEnvelope, type JobCompany, type JobPostingBillingCheck, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, type JobPostingSubscriptionEntitlements, type JobsListQuery, type JobsSearchBody, type LegalEntity, type LegalPageType, type ListEnvelope, type LocationSalaryDetail, type LocationSkillsIndex, type LocationTitlesIndex, type Logger, type LoginBody, type LogoutBody, type OfficeLocation, type PlacesListQuery, type PublicBlogAdjacentPosts, type PublicBlogAuthor, type PublicBlogPost, type PublicBlogPostSummary, type PublicBlogTag, type PublicBoard, type PublicBoardAnalytics, type PublicBoardFeatures, type PublicBoardTheme, type PublicCompany, type PublicCompanyDetail, type PublicJob, type PublicJobCard, type PublicLegalPage, type PublicPlace, REFRESH_TOKEN_KEY, type RedirectResolution, type RefreshBody, type RegisterBody, type RelatedSearch, type RemoteOption, type RemotePermit, type RemoteTimezone, type ResetPasswordBody, SDK_VERSION, type SalaryCompany, type SalaryDetailQuery, type SalaryLocation, type SalarySkill, type SalaryTitle, type SaveJobBody, type SavedJob, type SavedJobsListQuery, type SearchEnvelope, type Seniority, type SkillLocationSalary, type SkillLocationsIndex, type SkillSalaryDetail, type StorageMode, type StorefrontPagination, type TaxonomyGeo, type TaxonomyResolution, type TitleLocationSalary, type TitleLocationsIndex, type TitleSalaryDetail, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isConflict, isForbidden, isNotFound, isRateLimited, isUnauthorized, isValidationError };
package/dist/index.d.ts CHANGED
@@ -891,6 +891,50 @@ interface components {
891
891
  /** @description Free-form location string (e.g. `"Berlin, Germany"`, `"Mountain View, California, USA"`). Mapbox parses + ranks candidates server-side; rejects on low confidence. */
892
892
  query: string;
893
893
  };
894
+ JobPostingBillingCheck: {
895
+ /** @enum {string} */
896
+ object: "job_posting_billing_check";
897
+ hasActiveBilling: boolean;
898
+ };
899
+ JobPostingBillingOptions: {
900
+ /** @enum {string} */
901
+ object: "job_posting_billing_options";
902
+ options: {
903
+ id: string;
904
+ type: string;
905
+ planId: string;
906
+ planName: string;
907
+ planKind: string;
908
+ capacities: {
909
+ key: string;
910
+ total: number;
911
+ used: number;
912
+ remaining: number;
913
+ }[];
914
+ jobsRemaining: number;
915
+ jobsTotal: number;
916
+ featuredRemaining: number;
917
+ featuredTotal: number;
918
+ renewsAt: string | null;
919
+ }[];
920
+ };
921
+ JobPostingBillingOptionsBody: {
922
+ verificationToken: string;
923
+ };
924
+ JobPostingBillingVerification: {
925
+ /** @enum {string} */
926
+ object: "job_posting_billing_verification";
927
+ success: boolean;
928
+ };
929
+ JobPostingCheckBillingBody: {
930
+ /** Format: email */
931
+ email: string;
932
+ };
933
+ JobPostingLogo: {
934
+ /** @enum {string} */
935
+ object: "job_posting_logo";
936
+ publicUrl: string;
937
+ };
894
938
  JobPostingPlan: {
895
939
  /** @enum {string} */
896
940
  object: "job_posting_plan";
@@ -945,6 +989,27 @@ interface components {
945
989
  status: "invoice_sent";
946
990
  jobId: string;
947
991
  };
992
+ JobPostingSendVerificationBody: {
993
+ /** Format: email */
994
+ email: string;
995
+ };
996
+ JobPostingSubscriptionEntitlements: {
997
+ /** @enum {string} */
998
+ object: "job_posting_subscription_entitlements";
999
+ hasSubscription: boolean;
1000
+ subscriptionId: string | null;
1001
+ canFeature: boolean | null;
1002
+ featuredSlotsRemaining: number | null;
1003
+ featuredSlotsTotal: number | null;
1004
+ maxActiveRemaining: number | null;
1005
+ maxActiveTotal: number | null;
1006
+ featureSelectionMode: string | null;
1007
+ };
1008
+ JobPostingSubscriptionEntitlementsBody: {
1009
+ /** Format: email */
1010
+ email: string;
1011
+ planId: string;
1012
+ };
948
1013
  JobSummary: {
949
1014
  /** @description Unique identifier for the object. Use this value as the `{id}` path parameter for the job endpoints (e.g. `GET /v1/jobs/{id}`). */
950
1015
  id: string;
@@ -2686,7 +2751,7 @@ declare function isConflict(e: unknown): e is BoardApiError;
2686
2751
  * constant because the package is platform-neutral and cannot read
2687
2752
  * package.json at runtime.
2688
2753
  */
2689
- declare const SDK_VERSION = "1.12.0";
2754
+ declare const SDK_VERSION = "1.14.0";
2690
2755
 
2691
2756
  type BoardUser = Schemas['BoardUser'];
2692
2757
  type BoardAuthSession = Schemas['BoardAuthSession'];
@@ -2894,6 +2959,15 @@ type CreateJobPostingInput = Schemas['CreateJobPostingBody'];
2894
2959
  * `invoice_sent`. A rejected submission throws a `BoardApiError` instead.
2895
2960
  */
2896
2961
  type JobPostingResult = Schemas['JobPostingResult'];
2962
+ /**
2963
+ * The result of `uploadLogo()` / `fetchLogoByDomain()`: a stored logo whose
2964
+ * `publicUrl` you pass back as `submission.logoUrl` on `create(...)`.
2965
+ */
2966
+ type JobPostingLogoResult = Schemas['JobPostingLogo'];
2967
+ type JobPostingBillingCheck = Schemas['JobPostingBillingCheck'];
2968
+ type JobPostingBillingVerification = Schemas['JobPostingBillingVerification'];
2969
+ type JobPostingBillingOptions = Schemas['JobPostingBillingOptions'];
2970
+ type JobPostingSubscriptionEntitlements = Schemas['JobPostingSubscriptionEntitlements'];
2897
2971
 
2898
2972
  type TaxonomyGeo = Schemas['TaxonomyGeo'];
2899
2973
  type TaxonomyResolution = Schemas['PublicTaxonomyResolution'];
@@ -3600,6 +3674,63 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
3600
3674
  status: "invoice_sent";
3601
3675
  jobId: string;
3602
3676
  }>;
3677
+ uploadLogo(file: Blob, options?: FetchOptions): Promise<{
3678
+ object: "job_posting_logo";
3679
+ publicUrl: string;
3680
+ }>;
3681
+ fetchLogoByDomain(domain: string, options?: FetchOptions): Promise<{
3682
+ object: "job_posting_logo";
3683
+ publicUrl: string;
3684
+ }>;
3685
+ checkBilling(input: {
3686
+ email: string;
3687
+ }, options?: FetchOptions): Promise<{
3688
+ object: "job_posting_billing_check";
3689
+ hasActiveBilling: boolean;
3690
+ }>;
3691
+ sendBillingVerification(input: {
3692
+ email: string;
3693
+ }, options?: FetchOptions): Promise<{
3694
+ object: "job_posting_billing_verification";
3695
+ success: boolean;
3696
+ }>;
3697
+ getBillingOptions(input: {
3698
+ verificationToken: string;
3699
+ }, options?: FetchOptions): Promise<{
3700
+ object: "job_posting_billing_options";
3701
+ options: {
3702
+ id: string;
3703
+ type: string;
3704
+ planId: string;
3705
+ planName: string;
3706
+ planKind: string;
3707
+ capacities: {
3708
+ key: string;
3709
+ total: number;
3710
+ used: number;
3711
+ remaining: number;
3712
+ }[];
3713
+ jobsRemaining: number;
3714
+ jobsTotal: number;
3715
+ featuredRemaining: number;
3716
+ featuredTotal: number;
3717
+ renewsAt: string | null;
3718
+ }[];
3719
+ }>;
3720
+ checkSubscriptionEntitlements(input: {
3721
+ email: string;
3722
+ planId: string;
3723
+ }, options?: FetchOptions): Promise<{
3724
+ object: "job_posting_subscription_entitlements";
3725
+ hasSubscription: boolean;
3726
+ subscriptionId: string | null;
3727
+ canFeature: boolean | null;
3728
+ featuredSlotsRemaining: number | null;
3729
+ featuredSlotsTotal: number | null;
3730
+ maxActiveRemaining: number | null;
3731
+ maxActiveTotal: number | null;
3732
+ featureSelectionMode: string | null;
3733
+ }>;
3603
3734
  };
3604
3735
  salaries: {
3605
3736
  companies: {
@@ -4033,4 +4164,4 @@ declare function createBoardClient(options: CreateBoardClientOptions): {
4033
4164
  };
4034
4165
  type BoardSdk = ReturnType<typeof createBoardClient>;
4035
4166
 
4036
- export { ACCESS_TOKEN_KEY, type Awaitable, BOARD_ACCESS_GRANT_KEY, type BlogAuthorEmbed, type BlogPostsListQuery, type BlogSearchBody, type BlogSimilarQuery, type BlogTagEmbed, type BoardAccessGrant, BoardApiError, type BoardAuthSession, BoardClient, type BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type CompaniesListQuery, type CompaniesSearchBody, type CompanyJobsListQuery, type CompanyListEnvelope, type CompanyMarket, type CompanyMarketRef, type CompanyMarketsListQuery, type CompanySimilarQuery, type CreateBoardClientOptions, type CreateJobPostingInput, type CustomStorage, type EducationRequirement, type EmbedJobsQuery, type EmploymentType, type FetchOptions, type ForgotPasswordBody, 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, type JobCardListEnvelope, type JobCardSearchEnvelope, type JobCompany, type JobPostingPlan, type JobPostingResult, type JobsListQuery, type JobsSearchBody, type LegalEntity, type LegalPageType, type ListEnvelope, type LocationSalaryDetail, type LocationSkillsIndex, type LocationTitlesIndex, type Logger, type LoginBody, type LogoutBody, type OfficeLocation, type PlacesListQuery, type PublicBlogAdjacentPosts, type PublicBlogAuthor, type PublicBlogPost, type PublicBlogPostSummary, type PublicBlogTag, type PublicBoard, type PublicBoardAnalytics, type PublicBoardFeatures, type PublicBoardTheme, type PublicCompany, type PublicCompanyDetail, type PublicJob, type PublicJobCard, type PublicLegalPage, type PublicPlace, REFRESH_TOKEN_KEY, type RedirectResolution, type RefreshBody, type RegisterBody, type RelatedSearch, type RemoteOption, type RemotePermit, type RemoteTimezone, type ResetPasswordBody, SDK_VERSION, type SalaryCompany, type SalaryDetailQuery, type SalaryLocation, type SalarySkill, type SalaryTitle, type SaveJobBody, type SavedJob, type SavedJobsListQuery, type SearchEnvelope, type Seniority, type SkillLocationSalary, type SkillLocationsIndex, type SkillSalaryDetail, type StorageMode, type StorefrontPagination, type TaxonomyGeo, type TaxonomyResolution, type TitleLocationSalary, type TitleLocationsIndex, type TitleSalaryDetail, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isConflict, isForbidden, isNotFound, isRateLimited, isUnauthorized, isValidationError };
4167
+ export { ACCESS_TOKEN_KEY, type Awaitable, BOARD_ACCESS_GRANT_KEY, type BlogAuthorEmbed, type BlogPostsListQuery, type BlogSearchBody, type BlogSimilarQuery, type BlogTagEmbed, type BoardAccessGrant, BoardApiError, type BoardAuthSession, BoardClient, type BoardRequest, type BoardSdk, type BoardSeo, type BoardUser, type CompaniesListQuery, type CompaniesSearchBody, type CompanyJobsListQuery, type CompanyListEnvelope, type CompanyMarket, type CompanyMarketRef, type CompanyMarketsListQuery, type CompanySimilarQuery, type CreateBoardClientOptions, type CreateJobPostingInput, type CustomStorage, type EducationRequirement, type EmbedJobsQuery, type EmploymentType, type FetchOptions, type ForgotPasswordBody, 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, type JobCardListEnvelope, type JobCardSearchEnvelope, type JobCompany, type JobPostingBillingCheck, type JobPostingBillingOptions, type JobPostingBillingVerification, type JobPostingLogoResult, type JobPostingPlan, type JobPostingResult, type JobPostingSubscriptionEntitlements, type JobsListQuery, type JobsSearchBody, type LegalEntity, type LegalPageType, type ListEnvelope, type LocationSalaryDetail, type LocationSkillsIndex, type LocationTitlesIndex, type Logger, type LoginBody, type LogoutBody, type OfficeLocation, type PlacesListQuery, type PublicBlogAdjacentPosts, type PublicBlogAuthor, type PublicBlogPost, type PublicBlogPostSummary, type PublicBlogTag, type PublicBoard, type PublicBoardAnalytics, type PublicBoardFeatures, type PublicBoardTheme, type PublicCompany, type PublicCompanyDetail, type PublicJob, type PublicJobCard, type PublicLegalPage, type PublicPlace, REFRESH_TOKEN_KEY, type RedirectResolution, type RefreshBody, type RegisterBody, type RelatedSearch, type RemoteOption, type RemotePermit, type RemoteTimezone, type ResetPasswordBody, SDK_VERSION, type SalaryCompany, type SalaryDetailQuery, type SalaryLocation, type SalarySkill, type SalaryTitle, type SaveJobBody, type SavedJob, type SavedJobsListQuery, type SearchEnvelope, type Seniority, type SkillLocationSalary, type SkillLocationsIndex, type SkillSalaryDetail, type StorageMode, type StorefrontPagination, type TaxonomyGeo, type TaxonomyResolution, type TitleLocationSalary, type TitleLocationsIndex, type TitleSalaryDetail, type VerifyEmailBody, createBoardClient, isBoardApiError, isBoardPasswordRequired, isConflict, isForbidden, isNotFound, isRateLimited, isUnauthorized, isValidationError };
package/dist/index.js CHANGED
@@ -149,7 +149,7 @@ async function clearSession(storage) {
149
149
  }
150
150
 
151
151
  // src/version.ts
152
- var SDK_VERSION = "1.12.0";
152
+ var SDK_VERSION = "1.14.0";
153
153
 
154
154
  // src/client.ts
155
155
  function isRawBody(body) {
@@ -670,6 +670,58 @@ function jobPostingNamespace(client) {
670
670
  method: "POST",
671
671
  body: input
672
672
  });
673
+ },
674
+ /**
675
+ * Upload a company logo (JPEG/PNG/WebP/GIF, ≤2 MB). Returns the stored
676
+ * `publicUrl` — pass it back as `submission.logoUrl` on `create(...)`.
677
+ */
678
+ uploadLogo(file, options) {
679
+ const form = new FormData();
680
+ form.append("file", file);
681
+ return client.fetch("/job-postings/logo", {
682
+ ...options,
683
+ method: "POST",
684
+ body: form
685
+ });
686
+ },
687
+ /**
688
+ * Look up a company logo by domain via Brandfetch, store it, and return its
689
+ * `publicUrl` — pass it back as `submission.logoUrl` on `create(...)`. A
690
+ * `BoardApiError` (`job_posting_logo_not_found`) means no usable logo.
691
+ */
692
+ fetchLogoByDomain(domain, options) {
693
+ return client.fetch("/job-postings/logo/fetch", {
694
+ ...options,
695
+ query: { domain }
696
+ });
697
+ },
698
+ /** Does this email already have billing credit on the board? */
699
+ checkBilling(input, options) {
700
+ return client.fetch(
701
+ "/job-postings/check-billing",
702
+ { ...options, method: "POST", body: input }
703
+ );
704
+ },
705
+ /** Email a billing-verification token (then pass it to `getBillingOptions`). */
706
+ sendBillingVerification(input, options) {
707
+ return client.fetch(
708
+ "/job-postings/send-verification",
709
+ { ...options, method: "POST", body: input }
710
+ );
711
+ },
712
+ /** List the credit options for a verified email (an option → `selectedBilling`). */
713
+ getBillingOptions(input, options) {
714
+ return client.fetch(
715
+ "/job-postings/billing-options",
716
+ { ...options, method: "POST", body: input }
717
+ );
718
+ },
719
+ /** The featured/active entitlements a verified email's subscription grants. */
720
+ checkSubscriptionEntitlements(input, options) {
721
+ return client.fetch(
722
+ "/job-postings/subscription-entitlements",
723
+ { ...options, method: "POST", body: input }
724
+ );
673
725
  }
674
726
  };
675
727
  }
package/dist/index.mjs CHANGED
@@ -109,7 +109,7 @@ async function clearSession(storage) {
109
109
  }
110
110
 
111
111
  // src/version.ts
112
- var SDK_VERSION = "1.12.0";
112
+ var SDK_VERSION = "1.14.0";
113
113
 
114
114
  // src/client.ts
115
115
  function isRawBody(body) {
@@ -630,6 +630,58 @@ function jobPostingNamespace(client) {
630
630
  method: "POST",
631
631
  body: input
632
632
  });
633
+ },
634
+ /**
635
+ * Upload a company logo (JPEG/PNG/WebP/GIF, ≤2 MB). Returns the stored
636
+ * `publicUrl` — pass it back as `submission.logoUrl` on `create(...)`.
637
+ */
638
+ uploadLogo(file, options) {
639
+ const form = new FormData();
640
+ form.append("file", file);
641
+ return client.fetch("/job-postings/logo", {
642
+ ...options,
643
+ method: "POST",
644
+ body: form
645
+ });
646
+ },
647
+ /**
648
+ * Look up a company logo by domain via Brandfetch, store it, and return its
649
+ * `publicUrl` — pass it back as `submission.logoUrl` on `create(...)`. A
650
+ * `BoardApiError` (`job_posting_logo_not_found`) means no usable logo.
651
+ */
652
+ fetchLogoByDomain(domain, options) {
653
+ return client.fetch("/job-postings/logo/fetch", {
654
+ ...options,
655
+ query: { domain }
656
+ });
657
+ },
658
+ /** Does this email already have billing credit on the board? */
659
+ checkBilling(input, options) {
660
+ return client.fetch(
661
+ "/job-postings/check-billing",
662
+ { ...options, method: "POST", body: input }
663
+ );
664
+ },
665
+ /** Email a billing-verification token (then pass it to `getBillingOptions`). */
666
+ sendBillingVerification(input, options) {
667
+ return client.fetch(
668
+ "/job-postings/send-verification",
669
+ { ...options, method: "POST", body: input }
670
+ );
671
+ },
672
+ /** List the credit options for a verified email (an option → `selectedBilling`). */
673
+ getBillingOptions(input, options) {
674
+ return client.fetch(
675
+ "/job-postings/billing-options",
676
+ { ...options, method: "POST", body: input }
677
+ );
678
+ },
679
+ /** The featured/active entitlements a verified email's subscription grants. */
680
+ checkSubscriptionEntitlements(input, options) {
681
+ return client.fetch(
682
+ "/job-postings/subscription-entitlements",
683
+ { ...options, method: "POST", body: input }
684
+ );
633
685
  }
634
686
  };
635
687
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cavuno/board",
3
- "version": "1.12.0",
3
+ "version": "1.14.0",
4
4
  "description": "Typed isomorphic client for the Cavuno Board API",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.12.0",
2
+ "version": "1.14.0",
3
3
  "skills": [
4
4
  {
5
5
  "name": "cavuno-board-auth",