//#region src/types.d.ts type LockerversePaymentOption = "one-time" | "monthly" | "annually" | "every-six-months"; type LockerverseEnvironment = "development" | "production"; type LockerverseFulfillmentType = "none" | "event_admission"; declare const LOCKERVERSE_SDK_VERSION: string; type LockerverseProduct = { id: string; listingId: string; slug: string; name: string; description: string | null; fulfillmentType: LockerverseFulfillmentType; pricingMode: "fixed" | "custom"; paymentOption: LockerversePaymentOption; amountCents: number | null; minimumAmountCents: number | null; minimumQuantity: number | null; /** Per-order limit for this widget listing. Null means no per-order limit. */ maximumQuantity: number | null; inventoryQuantity: number | null; acceptsDiscounts: boolean; }; type LockerverseAvailabilityStatus = "available" | "sold_out"; type LockerverseCatalogAvailability = { listings: Array<{ listingId: string; maxPurchasableQuantity: number | null; remainingQuantity: number | null; status: LockerverseAvailabilityStatus; }>; sharedLimits: Array<{ id: string; listingIds: string[]; remainingQuantity: number; status: LockerverseAvailabilityStatus; }>; }; type LockerverseCatalog = { availability: LockerverseCatalogAvailability; community: LockerverseCommunityBranding | null; event: LockerverseEvent | null; payment: LockerversePaymentConfiguration; pricingPolicy: LockerverseCheckoutPricingPolicy; products: LockerverseProduct[]; widget: LockerverseWidgetConfiguration; }; type LockerverseEvent = { description: string | null; endAt: string; id: string; location: string | null; name: string; startAt: string; status: "draft" | "active" | "finished" | "cancelled"; }; type LockerverseCommunityBranding = { widgetAchEnabled?: boolean | undefined; accentColor: string; imageUrl: string | null; memberIdLabel?: string | null | undefined; name: string; }; type LockerverseCheckoutPricingPolicy = { currency: "usd"; serviceFeeRateBasisPoints: number; }; type LockerversePaymentConfiguration = { connectedAccountId: string | null; currency: "usd"; publishableKey: string; }; type LockerverseWidgetFields = { memberId: boolean; merchSize: boolean; phone: boolean; promoCode: boolean; serviceFee: boolean; shipping: boolean; tipping: boolean; }; type LockerverseCustomFieldOption = { id: string; label: string; }; type LockerverseCustomFieldBase = { id: string; label: string; paymentOptionIds?: string[] | undefined; required: boolean; }; type LockerverseTextCustomField = LockerverseCustomFieldBase & { type: "text" | "textarea"; }; type LockerverseBooleanCustomField = LockerverseCustomFieldBase & { type: "checkbox"; }; type LockerverseSingleOptionCustomField = LockerverseCustomFieldBase & { options: LockerverseCustomFieldOption[]; type: "radio" | "select"; }; type LockerverseMultiOptionCustomField = LockerverseCustomFieldBase & { options: LockerverseCustomFieldOption[]; type: "checkboxes" | "multi_select"; }; type LockerverseCustomField = LockerverseBooleanCustomField | LockerverseTextCustomField | LockerverseSingleOptionCustomField | LockerverseMultiOptionCustomField; type LockerverseCustomFieldAnswerValue = Field extends LockerverseBooleanCustomField ? boolean : Field extends LockerverseMultiOptionCustomField ? string[] : string; type LockerverseCustomFieldAnswer = Field extends LockerverseCustomField ? { fieldId: Field["id"]; value: LockerverseCustomFieldAnswerValue; } : never; type LockerverseWidgetConfiguration = { requiredShipping?: { additionalUnitAmountCents?: number | undefined; productId: string; triggerProductIds: string[]; } | undefined; customFields: LockerverseCustomField[]; description: string | null; fields: LockerverseWidgetFields; id: string; name: string; showCommunityBranding: boolean; title: string | null; }; type LockerverseSdkErrorCode = "public_events_load_failed" | "auction_load_failed" | "auction_bid_failed" | "auction_purchase_failed" | "auction_purchase_status_failed" | "auction_receipt_failed" | "widget_load_failed" | "signup_load_failed" | "signup_submit_failed" | "total_calculation_failed" | "payment_submit_failed" | "payment_status_failed" | "invalid_selection"; type LockerverseSdkOperation = "list_public_events" | "list_auctions" | "load_auction" | "create_auction_bid" | "create_auction_purchase" | "get_auction_purchase_receipt" | "get_auction_purchase_status" | "load_widget" | "load_signup" | "submit_signup" | "calculate_total" | "submit_payment" | "get_payment_status"; type LockerverseSdkServerCode = "PAYMENT_WIDGET_SALES_LIMIT_REACHED" | "PAYMENT_WIDGET_PHONE_INVALID" | "PAYMENT_WIDGET_PHONE_REQUIRED" | "SIGN_UP_WIDGET_PHONE_INVALID" | "SIGN_UP_WIDGET_PHONE_REQUIRED"; type LockerverseSdkFailureKind = "network" | "timeout" | "aborted" | "invalid_response"; declare class LockerverseSdkError extends Error { readonly failureKind: LockerverseSdkFailureKind | undefined; readonly code: LockerverseSdkErrorCode; readonly operation: LockerverseSdkOperation; readonly reportable: boolean; readonly recoveryRecommended: boolean; readonly sdkVersion: string; readonly serverCode: LockerverseSdkServerCode | undefined; readonly status: number | undefined; constructor({ failureKind, code, message, operation, reportable, recoveryRecommended, serverCode, status }: { failureKind?: LockerverseSdkFailureKind | undefined; code: LockerverseSdkErrorCode; message: string; operation: LockerverseSdkOperation; reportable: boolean; recoveryRecommended?: boolean; serverCode?: LockerverseSdkServerCode; status?: number | undefined; }); } type LockerverseCheckoutLineItem = { productId: string; productName: string; listingId: string; listingSlug: string; acceptsDiscounts: boolean; eventId: string | null; fulfillmentType: LockerverseFulfillmentType; pricingMode: "fixed" | "custom"; paymentOption: LockerversePaymentOption; quantity: number; unitAmountCents: number; subtotalCents: number; }; type LockerverseAppliedDiscount = { percentageOff?: number | undefined; amountOffCents?: number | undefined; message?: string | undefined; source: "email_list" | "promo_code"; }; type LockerverseCheckoutAmounts = { amountCents: number; discountableSubtotalCents: number; discountCents: number; serviceFeeCents: number; subtotalCents: number; tipCents: number; totalCents: number; }; type LockerverseCheckoutQuote = LockerverseCheckoutAmounts & { appliedDiscount: LockerverseAppliedDiscount | null; authoritative: true; paymentReference: string; payment: LockerversePaymentConfiguration; paymentOption: LockerversePaymentOption; lineItems: LockerverseCheckoutLineItem[]; }; type LockerverseCheckoutEstimate = LockerverseCheckoutAmounts & { appliedDiscount: null; authoritative: false; items: readonly LockerverseCheckoutItem[]; lineItems: readonly LockerverseCheckoutLineItem[]; paymentOption: LockerversePaymentOption; }; type LockerverseCheckoutPricingInput = { email?: string; includeServiceFee?: boolean; promoCode?: string; tipCents?: number; }; type LockerversePaymentStatus = "action_required" | "failed" | "pending" | "success"; type LockerversePaymentResult = { checkoutId: string; paymentReference: string; checkoutStatus: LockerversePaymentStatus; retryUrl?: string | undefined; clientSecret: string | null; paymentRequired: boolean; requiresAction: boolean; status: string | null; }; type LockerversePaymentCompletion = LockerversePaymentResult & { email: string | null; lineItems: readonly LockerverseCheckoutLineItem[] | null; }; type LockerverseShipping = { address: { city: string; country: string; line1: string; line2?: string; postal_code: string; state: string; }; name: string; }; type LockerversePaymentSubmission = { confirmationToken?: string; paymentMethodConfiguration?: "explicit"; customFieldAnswers?: LockerverseCustomFieldAnswer[]; email: string; memberId?: string; merchSize?: "XS" | "S" | "M" | "L" | "XL" | "XXL" | "XXXL"; metadata?: Record; phone?: string; shipping?: LockerverseShipping; }; type LockerverseCheckoutItem = { productId: string; quantity: number; } | { productId: string; amountCents: number; } | { productId: string; }; type LockerverseCheckoutSelectionItem = { productSlug: string; quantity: number; } | { productSlug: string; amountCents: number; } | { productSlug: string; }; type LockerverseEstimateCheckoutInput = LockerverseCheckoutPricingInput & { selection: LockerverseCheckoutSelectionItem[]; }; type LockerverseLoadCheckoutInput = { selection: LockerverseCheckoutSelectionItem[]; }; type LockerverseCalculateTotalInput = LockerverseCheckoutPricingInput & { catalog: LockerverseCatalog; } & ({ items: LockerverseCheckoutItem[]; selection?: never; } | { items?: never; selection: LockerverseCheckoutSelectionItem[]; }); type LockerversePreparedCheckout = Readonly; }>; type LockerverseLoadedCheckout = Readonly<{ catalog: LockerverseCatalog; checkout: LockerversePreparedCheckout; }>; type LockerverseSubmitPaymentInput = { checkout: LockerversePreparedCheckout; submission: LockerversePaymentSubmission; }; type CreateLockerverseWidgetBaseOptions = { communitySlug: string; fetch?: typeof globalThis.fetch; onError?: (error: LockerverseSdkError) => void; requestTimeoutMs?: number; sentryDsn?: string | null; widgetSlug: string; }; type LockerverseResourceEnvironmentOptions = { apiBaseUrl: string; environment: LockerverseEnvironment; } | { apiBaseUrl?: undefined; environment?: "production"; }; type CreateLockerverseWidgetOptions = CreateLockerverseWidgetBaseOptions & LockerverseResourceEnvironmentOptions; type LockerverseCheckoutClient = { calculateTotal: (input: LockerverseCalculateTotalInput) => Promise; getPaymentStatus: (paymentReference: string) => Promise; load: { (): Promise; (input: LockerverseLoadCheckoutInput): Promise; }; submitPayment: (input: LockerverseSubmitPaymentInput) => Promise; }; //#endregion export { LockerversePaymentCompletion as A, LockerverseSdkErrorCode as B, LockerverseEnvironment as C, LockerverseLoadCheckoutInput as D, LockerverseFulfillmentType as E, LockerversePaymentSubmission as F, LockerverseSingleOptionCustomField as G, LockerverseSdkOperation as H, LockerversePreparedCheckout as I, LockerverseWidgetConfiguration as J, LockerverseSubmitPaymentInput as K, LockerverseProduct as L, LockerversePaymentOption as M, LockerversePaymentResult as N, LockerverseLoadedCheckout as O, LockerversePaymentStatus as P, LockerverseResourceEnvironmentOptions as R, LockerverseCustomFieldOption as S, LockerverseEvent as T, LockerverseSdkServerCode as U, LockerverseSdkFailureKind as V, LockerverseShipping as W, LockerverseWidgetFields as Y, LockerverseCheckoutSelectionItem as _, LockerverseBooleanCustomField as a, LockerverseCustomFieldAnswer as b, LockerverseCatalogAvailability as c, LockerverseCheckoutEstimate as d, LockerverseCheckoutItem as f, LockerverseCheckoutQuote as g, LockerverseCheckoutPricingPolicy as h, LockerverseAvailabilityStatus as i, LockerversePaymentConfiguration as j, LockerverseMultiOptionCustomField as k, LockerverseCheckoutAmounts as l, LockerverseCheckoutPricingInput as m, LOCKERVERSE_SDK_VERSION as n, LockerverseCalculateTotalInput as o, LockerverseCheckoutLineItem as p, LockerverseTextCustomField as q, LockerverseAppliedDiscount as r, LockerverseCatalog as s, CreateLockerverseWidgetOptions as t, LockerverseCheckoutClient as u, LockerverseCommunityBranding as v, LockerverseEstimateCheckoutInput as w, LockerverseCustomFieldAnswerValue as x, LockerverseCustomField as y, LockerverseSdkError as z }; //# sourceMappingURL=types.d.ts.map