import { Static } from '@sinclair/typebox'; /** * Tier feature types enum for user feature usage tracking */ export declare enum TierFeature { PLATFORM_REQUEST = "platform_request" } /** * Request payload for increasing user feature usage (deducting credits) */ export declare const IncreaseFeatureUsageRequest: import("@sinclair/typebox").TObject<{ feature: import("@sinclair/typebox").TString; increment: import("@sinclair/typebox").TInteger; }>; export type IncreaseFeatureUsageRequest = Static; /** * Request payload for decreasing user feature usage (refunding credits) */ export declare const DecreaseFeatureUsageRequest: import("@sinclair/typebox").TObject<{ feature: import("@sinclair/typebox").TString; decrement: import("@sinclair/typebox").TInteger; }>; export type DecreaseFeatureUsageRequest = Static; /** * Raw feature allowance information from SKAI API */ export declare const RawFeatureAllowance: import("@sinclair/typebox").TObject<{ limit: import("@sinclair/typebox").TNumber; used: import("@sinclair/typebox").TNumber; purchased: import("@sinclair/typebox").TOptional; purchased_used: import("@sinclair/typebox").TOptional; }>; export type RawFeatureAllowance = Static; /** * Processed feature allowance information with computed remaining value */ export interface FeatureAllowance extends RawFeatureAllowance { remaining: number; } /** * Tier feature allowance information (alias for FeatureAllowance) */ export type TierFeatureAllowance = FeatureAllowance; /** * User tier information response */ export declare const UserTierResponse: import("@sinclair/typebox").TObject<{ success: import("@sinclair/typebox").TBoolean; error: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>; data: import("@sinclair/typebox").TObject<{ userId: import("@sinclair/typebox").TString; tierId: import("@sinclair/typebox").TString; tier: import("@sinclair/typebox").TObject<{ id: import("@sinclair/typebox").TString; name: import("@sinclair/typebox").TString; description: import("@sinclair/typebox").TString; tierType: import("@sinclair/typebox").TString; baseAllowances: import("@sinclair/typebox").TRecord; }>; featureAllowances: import("@sinclair/typebox").TRecord; purchased_used: import("@sinclair/typebox").TOptional; }>>; lastResetDate: import("@sinclair/typebox").TString; }>; }>; export type UserTierResponse = Static; /** * Response for increase/decrease feature usage operations */ export declare const FeatureUsageUpdateResponse: import("@sinclair/typebox").TObject<{ success: import("@sinclair/typebox").TBoolean; error: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TString, import("@sinclair/typebox").TNull]>; feature_allowances: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TRecord; purchased_used: import("@sinclair/typebox").TOptional; }>>, import("@sinclair/typebox").TNull]>; }>; export type FeatureUsageUpdateResponse = Static;