import type { TaxCreate } from './TaxCreate';
/**
 * The subscription ledger entry represents a single change on the subscription balance.
 * @export
 * @interface SubscriptionLedgerEntryCreate
 */
export interface SubscriptionLedgerEntryCreate {
    /**
     * The number of items that were consumed.
     * @type {number}
     * @memberof SubscriptionLedgerEntryCreate
     */
    quantity: number;
    /**
     * The subscription version that the ledger entry belongs to.
     * @type {number}
     * @memberof SubscriptionLedgerEntryCreate
     */
    subscriptionVersion: number;
    /**
     * A client-generated nonce which uniquely identifies some action to be executed. Subsequent requests with the same external ID do not execute the action again, but return the original result.
     * @type {string}
     * @memberof SubscriptionLedgerEntryCreate
     */
    externalId: string;
    /**
     * A set of tax lines, each of which specifies a tax applied to the ledger entry.
     * @type {Set<TaxCreate>}
     * @memberof SubscriptionLedgerEntryCreate
     */
    taxes?: Set<TaxCreate>;
    /**
     * The leger entry's amount with discounts applied, including taxes.
     * @type {number}
     * @memberof SubscriptionLedgerEntryCreate
     */
    amountIncludingTax: number;
    /**
     * The title that indicates what the ledger entry is about.
     * @type {string}
     * @memberof SubscriptionLedgerEntryCreate
     */
    title: string;
    /**
     *
     * @type {string}
     * @memberof SubscriptionLedgerEntryCreate
     */
    componentReferenceName?: string;
    /**
     *
     * @type {number}
     * @memberof SubscriptionLedgerEntryCreate
     */
    subscriptionMetricId?: number;
}
/**
 * Check if a given object implements the SubscriptionLedgerEntryCreate interface.
 */
export declare function instanceOfSubscriptionLedgerEntryCreate(value: object): value is SubscriptionLedgerEntryCreate;
export declare function SubscriptionLedgerEntryCreateFromJSON(json: any): SubscriptionLedgerEntryCreate;
export declare function SubscriptionLedgerEntryCreateFromJSONTyped(json: any, ignoreDiscriminator: boolean): SubscriptionLedgerEntryCreate;
export declare function SubscriptionLedgerEntryCreateToJSON(json: any): SubscriptionLedgerEntryCreate;
export declare function SubscriptionLedgerEntryCreateToJSONTyped(value?: SubscriptionLedgerEntryCreate | null, ignoreDiscriminator?: boolean): any;
