import type { Transport, BlockConfig, BlockMetadata, HealthCheckResponse } from '@23blocks/contracts'; import { type RewardsService, type CouponsService, type LoyaltyService, type BadgesService, type CouponConfigurationsService, type OfferCodesService, type ExpirationRulesService, type RewardsCustomersService, type BadgeCategoriesService, type MoneyRulesService, type ProductRulesService, type EventRulesService } from './services/index.js'; /** * Configuration for the Rewards block. */ export interface RewardsBlockConfig extends BlockConfig { } /** * Loyalty, rewards, and gamification block interface. */ export interface RewardsBlock { /** Reward CRUD operations */ rewards: RewardsService; /** Coupon management */ coupons: CouponsService; /** Loyalty program management */ loyalty: LoyaltyService; /** Badge management */ badges: BadgesService; /** Coupon configuration management */ couponConfigurations: CouponConfigurationsService; /** Offer code management */ offerCodes: OfferCodesService; /** Reward expiration rule management */ expirationRules: ExpirationRulesService; /** Rewards customer management */ customers: RewardsCustomersService; /** Badge category management */ badgeCategories: BadgeCategoriesService; /** Money-based reward rule management */ moneyRules: MoneyRulesService; /** Product-based reward rule management */ productRules: ProductRulesService; /** Event-based reward rule management */ eventRules: EventRulesService; /** Ping the service health endpoint */ health(): Promise; } /** * Create the Rewards block. * * @example * ```typescript * const block = createRewardsBlock(transport, { apiKey: 'xxx' }); * const rewards = await block.rewards.list({ page: 1 }); * ``` */ export declare function createRewardsBlock(transport: Transport, config: RewardsBlockConfig): RewardsBlock; export declare const rewardsBlockMetadata: BlockMetadata; //# sourceMappingURL=rewards.block.d.ts.map