import { A as AppEnv, I as Infinite, b as ProductItemIntervalType, U as UsageModel, F as FreeTrialDuration } from './prodEnums-C1lccCWI.mjs';

interface PriceTier {
    to: number;
    amount: number | "inf";
}
interface ProductItem {
    feature_id?: string;
    included_usage?: number | typeof Infinite;
    interval?: ProductItemIntervalType;
    usage_model?: UsageModel;
    price?: number;
    billing_units?: number;
    entity_feature_id?: string;
    reset_usage_on_billing?: boolean;
    reset_usage_when_enabled?: boolean;
}
interface FreeTrial {
    duration: FreeTrialDuration;
    length: number;
    unique_fingerprint: boolean;
}
interface Product {
    autumn_id: string;
    created_at: number;
    id: string;
    name: string;
    env: AppEnv;
    is_add_on: boolean;
    is_default: boolean;
    group: string;
    version: number;
    items: ProductItem[];
    free_trial: FreeTrial | null;
}
interface CreateProductParams {
    id: string;
    name?: string;
    is_add_on?: boolean;
    is_default?: boolean;
    items?: ProductItem[];
    free_trial?: FreeTrial;
}
interface ListProductsParams {
}

export type { CreateProductParams, FreeTrial, ListProductsParams, PriceTier, Product, ProductItem };
