import * as Schema from "effect/Schema";
export declare const PostInvoicesInvoiceLinesLineItemIdInput: Schema.Struct<{
    readonly invoice: Schema.String;
    readonly line_item_id: Schema.String;
    readonly amount: Schema.optional<Schema.Number>;
    readonly description: Schema.optional<Schema.String>;
    readonly discountable: Schema.optional<Schema.Boolean>;
    readonly discounts: Schema.optional<Schema.Unknown>;
    readonly expand: Schema.optional<Schema.$Array<Schema.String>>;
    readonly metadata: Schema.optional<Schema.Unknown>;
    readonly period: Schema.optional<Schema.Struct<{
        readonly end: Schema.Number;
        readonly start: Schema.Number;
    }>>;
    readonly price_data: Schema.optional<Schema.Struct<{
        readonly currency: Schema.String;
        readonly product: Schema.optional<Schema.String>;
        readonly product_data: Schema.optional<Schema.Struct<{
            readonly description: Schema.optional<Schema.String>;
            readonly images: Schema.optional<Schema.$Array<Schema.String>>;
            readonly metadata: Schema.optional<Schema.$Record<Schema.String, Schema.String>>;
            readonly name: Schema.String;
            readonly tax_code: Schema.optional<Schema.String>;
            readonly unit_label: Schema.optional<Schema.String>;
        }>>;
        readonly tax_behavior: Schema.optional<Schema.Literals<readonly ["exclusive", "inclusive", "unspecified"]>>;
        readonly unit_amount: Schema.optional<Schema.Number>;
        readonly unit_amount_decimal: Schema.optional<Schema.String>;
    }>>;
    readonly pricing: Schema.optional<Schema.Struct<{
        readonly price: Schema.optional<Schema.String>;
    }>>;
    readonly quantity: Schema.optional<Schema.Number>;
    readonly tax_amounts: Schema.optional<Schema.Unknown>;
    readonly tax_rates: Schema.optional<Schema.Unknown>;
}>;
export type PostInvoicesInvoiceLinesLineItemIdInput = typeof PostInvoicesInvoiceLinesLineItemIdInput.Type;
export declare const PostInvoicesInvoiceLinesLineItemIdOutput: Schema.Struct<{
    readonly amount: Schema.Number;
    readonly currency: Schema.String;
    readonly description: Schema.NullOr<Schema.String>;
    readonly discount_amounts: Schema.NullOr<Schema.$Array<Schema.Struct<{
        readonly amount: Schema.Number;
        readonly discount: Schema.Unknown;
    }>>>;
    readonly discountable: Schema.Boolean;
    readonly discounts: Schema.$Array<Schema.Unknown>;
    readonly id: Schema.String;
    readonly invoice: Schema.NullOr<Schema.String>;
    readonly livemode: Schema.Boolean;
    readonly metadata: Schema.$Record<Schema.String, Schema.String>;
    readonly object: Schema.Literals<readonly ["line_item"]>;
    readonly parent: Schema.Unknown;
    readonly period: Schema.Struct<{
        readonly end: Schema.Number;
        readonly start: Schema.Number;
    }>;
    readonly pretax_credit_amounts: Schema.NullOr<Schema.$Array<Schema.Struct<{
        readonly amount: Schema.Number;
        readonly credit_balance_transaction: Schema.optional<Schema.Unknown>;
        readonly discount: Schema.optional<Schema.Unknown>;
        readonly type: Schema.Literals<readonly ["credit_balance_transaction", "discount"]>;
    }>>>;
    readonly pricing: Schema.Unknown;
    readonly quantity: Schema.NullOr<Schema.Number>;
    readonly subscription: Schema.Unknown;
    readonly subtotal: Schema.Number;
    readonly taxes: Schema.NullOr<Schema.$Array<Schema.Struct<{
        readonly amount: Schema.Number;
        readonly tax_behavior: Schema.Literals<readonly ["exclusive", "inclusive"]>;
        readonly tax_rate_details: Schema.Unknown;
        readonly taxability_reason: Schema.Literals<readonly ["customer_exempt", "not_available", "not_collecting", "not_subject_to_tax", "not_supported", "portion_product_exempt", "portion_reduced_rated", "portion_standard_rated", "product_exempt", "product_exempt_holiday", "proportionally_rated", "reduced_rated", "reverse_charge", "standard_rated", "taxable_basis_reduced", "zero_rated"]>;
        readonly taxable_amount: Schema.NullOr<Schema.Number>;
        readonly type: Schema.Literals<readonly ["tax_rate_details"]>;
    }>>>;
}>;
export type PostInvoicesInvoiceLinesLineItemIdOutput = typeof PostInvoicesInvoiceLinesLineItemIdOutput.Type;
/**
 * Update an invoice's line item
 *
 * <p>Updates an invoice’s line item. Some fields, such as <code>tax_amounts</code>, only live on the invoice line item,
 * so they can only be updated through this endpoint. Other fields, such as <code>amount</code>, live on both the invoice
 * item and the invoice line item, so updates on this endpoint will propagate to the invoice item as well.
 * Updating an invoice’s line item is only possible before the invoice is finalized.</p>
 *
 * @param invoice - Invoice ID of line item
 * @param line_item_id - Invoice line item ID
 */
export declare const PostInvoicesInvoiceLinesLineItemId: any;
//# sourceMappingURL=PostInvoicesInvoiceLinesLineItemId.d.ts.map