import * as Schema from "effect/Schema";
export declare const PostPlansInput: Schema.Struct<{
    readonly active: Schema.optional<Schema.Boolean>;
    readonly amount: Schema.optional<Schema.Number>;
    readonly amount_decimal: Schema.optional<Schema.String>;
    readonly billing_scheme: Schema.optional<Schema.Literals<readonly ["per_unit", "tiered"]>>;
    readonly currency: Schema.String;
    readonly expand: Schema.optional<Schema.$Array<Schema.String>>;
    readonly id: Schema.optional<Schema.String>;
    readonly interval: Schema.Literals<readonly ["day", "month", "week", "year"]>;
    readonly interval_count: Schema.optional<Schema.Number>;
    readonly metadata: Schema.optional<Schema.Unknown>;
    readonly meter: Schema.optional<Schema.String>;
    readonly nickname: Schema.optional<Schema.String>;
    readonly product: Schema.optional<Schema.Unknown>;
    readonly tiers: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly flat_amount: Schema.optional<Schema.Number>;
        readonly flat_amount_decimal: Schema.optional<Schema.String>;
        readonly unit_amount: Schema.optional<Schema.Number>;
        readonly unit_amount_decimal: Schema.optional<Schema.String>;
        readonly up_to: Schema.Unknown;
    }>>>;
    readonly tiers_mode: Schema.optional<Schema.Literals<readonly ["graduated", "volume"]>>;
    readonly transform_usage: Schema.optional<Schema.Struct<{
        readonly divide_by: Schema.Number;
        readonly round: Schema.Literals<readonly ["down", "up"]>;
    }>>;
    readonly trial_period_days: Schema.optional<Schema.Number>;
    readonly usage_type: Schema.optional<Schema.Literals<readonly ["licensed", "metered"]>>;
}>;
export type PostPlansInput = typeof PostPlansInput.Type;
export declare const PostPlansOutput: Schema.Struct<{
    readonly active: Schema.Boolean;
    readonly amount: Schema.NullOr<Schema.Number>;
    readonly amount_decimal: Schema.NullOr<Schema.String>;
    readonly billing_scheme: Schema.Literals<readonly ["per_unit", "tiered"]>;
    readonly created: Schema.Number;
    readonly currency: Schema.String;
    readonly id: Schema.String;
    readonly interval: Schema.Literals<readonly ["day", "month", "week", "year"]>;
    readonly interval_count: Schema.Number;
    readonly livemode: Schema.Boolean;
    readonly metadata: Schema.NullOr<Schema.$Record<Schema.String, Schema.String>>;
    readonly meter: Schema.NullOr<Schema.String>;
    readonly nickname: Schema.NullOr<Schema.String>;
    readonly object: Schema.Literals<readonly ["plan"]>;
    readonly product: Schema.Unknown;
    readonly tiers: Schema.optional<Schema.$Array<Schema.Struct<{
        readonly flat_amount: Schema.NullOr<Schema.Number>;
        readonly flat_amount_decimal: Schema.NullOr<Schema.String>;
        readonly unit_amount: Schema.NullOr<Schema.Number>;
        readonly unit_amount_decimal: Schema.NullOr<Schema.String>;
        readonly up_to: Schema.NullOr<Schema.Number>;
    }>>>;
    readonly tiers_mode: Schema.NullOr<Schema.Literals<readonly ["graduated", "volume"]>>;
    readonly transform_usage: Schema.Unknown;
    readonly trial_period_days: Schema.NullOr<Schema.Number>;
    readonly usage_type: Schema.Literals<readonly ["licensed", "metered"]>;
}>;
export type PostPlansOutput = typeof PostPlansOutput.Type;
/**
 * Create a plan
 *
 * <p>You can now model subscriptions more flexibly using the <a href="#prices">Prices API</a>. It replaces the Plans API and is backwards compatible to simplify your migration.</p>
 */
export declare const PostPlans: import("@distilled.cloud/core/client").OperationMethod<{
    readonly active?: boolean | undefined;
    readonly amount?: number | undefined;
    readonly amount_decimal?: string | undefined;
    readonly billing_scheme?: "per_unit" | "tiered" | undefined;
    readonly currency: string;
    readonly expand?: readonly string[] | undefined;
    readonly id?: string | undefined;
    readonly interval: "day" | "month" | "week" | "year";
    readonly interval_count?: number | undefined;
    readonly metadata?: unknown;
    readonly meter?: string | undefined;
    readonly nickname?: string | undefined;
    readonly product?: unknown;
    readonly tiers?: readonly {
        readonly flat_amount?: number | undefined;
        readonly flat_amount_decimal?: string | undefined;
        readonly unit_amount?: number | undefined;
        readonly unit_amount_decimal?: string | undefined;
        readonly up_to: unknown;
    }[] | undefined;
    readonly tiers_mode?: "graduated" | "volume" | undefined;
    readonly transform_usage?: {
        readonly divide_by: number;
        readonly round: "down" | "up";
    } | undefined;
    readonly trial_period_days?: number | undefined;
    readonly usage_type?: "licensed" | "metered" | undefined;
}, {
    readonly active: boolean;
    readonly amount: number | null;
    readonly amount_decimal: string | null;
    readonly billing_scheme: "per_unit" | "tiered";
    readonly created: number;
    readonly currency: string;
    readonly id: string;
    readonly interval: "day" | "month" | "week" | "year";
    readonly interval_count: number;
    readonly livemode: boolean;
    readonly metadata: {
        readonly [x: string]: string;
    } | null;
    readonly meter: string | null;
    readonly nickname: string | null;
    readonly object: "plan";
    readonly product: unknown;
    readonly tiers?: readonly {
        readonly flat_amount: number | null;
        readonly flat_amount_decimal: string | null;
        readonly unit_amount: number | null;
        readonly unit_amount_decimal: string | null;
        readonly up_to: number | null;
    }[] | undefined;
    readonly tiers_mode: "graduated" | "volume" | null;
    readonly transform_usage: unknown;
    readonly trial_period_days: number | null;
    readonly usage_type: "licensed" | "metered";
}, never, any>;
//# sourceMappingURL=PostPlans.d.ts.map