import { ListResult } from '../list_result';
import { RequestWrapper } from "../request_wrapper";
import { Model } from "./model";
import { filter } from "../filter";
export declare class ItemPrice extends Model {
    id: string;
    name: string;
    item_family_id?: string;
    item_id?: string;
    description?: string;
    status?: string;
    external_name?: string;
    price_variant_id?: string;
    proration_type?: string;
    pricing_model: string;
    price?: number;
    price_in_decimal?: string;
    period?: number;
    currency_code: string;
    period_unit?: string;
    trial_period?: number;
    trial_period_unit?: string;
    trial_end_action?: string;
    shipping_period?: number;
    shipping_period_unit?: string;
    billing_cycles?: number;
    free_quantity: number;
    free_quantity_in_decimal?: string;
    channel?: string;
    resource_version?: number;
    updated_at?: number;
    created_at: number;
    usage_accumulation_reset_frequency?: string;
    archived_at?: number;
    invoice_notes?: string;
    tiers?: Array<Tier>;
    is_taxable?: boolean;
    tax_detail?: TaxDetail;
    tax_providers_fields?: Array<TaxProvidersField>;
    accounting_detail?: AccountingDetail;
    metadata?: any;
    item_type?: string;
    archivable?: boolean;
    parent_item_id?: string;
    show_description_in_invoices?: boolean;
    show_description_in_quotes?: boolean;
    deleted: boolean;
    business_entity_id?: string;
    static create(params?: _item_price.create_params): RequestWrapper;
    static retrieve(item_price_id: string, params?: any): RequestWrapper;
    static update(item_price_id: string, params?: _item_price.update_params): RequestWrapper;
    static list(params?: _item_price.item_price_list_params): RequestWrapper<ListResult>;
    static delete(item_price_id: string, params?: any): RequestWrapper;
    static find_applicable_items(item_price_id: string, params?: _item_price.item_price_find_applicable_items_params): RequestWrapper<ListResult>;
    static find_applicable_item_prices(item_price_id: string, params?: _item_price.item_price_find_applicable_item_prices_params): RequestWrapper<ListResult>;
}
export declare class Tier extends Model {
    starting_unit: number;
    ending_unit?: number;
    price: number;
    starting_unit_in_decimal?: string;
    ending_unit_in_decimal?: string;
    price_in_decimal?: string;
    pricing_type?: string;
    package_size?: number;
}
export declare class TaxDetail extends Model {
    tax_profile_id?: string;
    avalara_sale_type?: string;
    avalara_transaction_type?: number;
    avalara_service_type?: number;
    avalara_tax_code?: string;
    hsn_code?: string;
    taxjar_product_code?: string;
}
export declare class TaxProvidersField extends Model {
    provider_name: string;
    field_id: string;
    field_value: string;
}
export declare class AccountingDetail extends Model {
    sku?: string;
    accounting_code?: string;
    accounting_category1?: string;
    accounting_category2?: string;
    accounting_category3?: string;
    accounting_category4?: string;
}
export declare namespace _item_price {
    interface create_params {
        id: string;
        name: string;
        description?: string;
        item_id: string;
        invoice_notes?: string;
        proration_type?: string;
        external_name?: string;
        currency_code?: string;
        price_variant_id?: string;
        is_taxable?: boolean;
        free_quantity?: number;
        free_quantity_in_decimal?: string;
        metadata?: any;
        show_description_in_invoices?: boolean;
        show_description_in_quotes?: boolean;
        usage_accumulation_reset_frequency?: string;
        business_entity_id?: string;
        pricing_model?: string;
        price?: number;
        price_in_decimal?: string;
        period_unit?: string;
        period?: number;
        trial_period_unit?: string;
        trial_period?: number;
        shipping_period?: number;
        shipping_period_unit?: string;
        billing_cycles?: number;
        trial_end_action?: string;
        tax_detail?: tax_detail_create_params;
        accounting_detail?: accounting_detail_create_params;
        tiers?: Array<tiers_create_params>;
        tax_providers_fields?: Array<tax_providers_fields_create_params>;
    }
    interface update_params {
        name?: string;
        description?: string;
        proration_type?: string;
        price_variant_id?: string;
        status?: string;
        external_name?: string;
        usage_accumulation_reset_frequency?: string;
        currency_code?: string;
        invoice_notes?: string;
        is_taxable?: boolean;
        free_quantity?: number;
        free_quantity_in_decimal?: string;
        metadata?: any;
        pricing_model?: string;
        price?: number;
        price_in_decimal?: string;
        period_unit?: string;
        period?: number;
        trial_period_unit?: string;
        trial_period?: number;
        shipping_period?: number;
        shipping_period_unit?: string;
        billing_cycles?: number;
        trial_end_action?: string;
        show_description_in_invoices?: boolean;
        show_description_in_quotes?: boolean;
        tax_detail?: tax_detail_update_params;
        accounting_detail?: accounting_detail_update_params;
        tiers?: Array<tiers_update_params>;
        tax_providers_fields?: Array<tax_providers_fields_update_params>;
    }
    interface item_price_list_params {
        limit?: number;
        offset?: string;
        id?: filter._string;
        name?: filter._string;
        pricing_model?: filter._enum;
        item_id?: filter._string;
        item_family_id?: filter._string;
        item_type?: filter._enum;
        currency_code?: filter._string;
        price_variant_id?: filter._string;
        trial_period?: filter._number;
        trial_period_unit?: filter._enum;
        status?: filter._enum;
        updated_at?: filter._timestamp;
        business_entity_id?: filter._string;
        include_site_level_resources?: filter._boolean;
        period_unit?: filter._enum;
        period?: filter._number;
        channel?: filter._enum;
        "sort_by[asc]"?: string;
        "sort_by[desc]"?: string;
    }
    interface item_price_find_applicable_items_params {
        limit?: number;
        offset?: string;
        "sort_by[asc]"?: string;
        "sort_by[desc]"?: string;
    }
    interface item_price_find_applicable_item_prices_params {
        limit?: number;
        offset?: string;
        item_id?: string;
        "sort_by[asc]"?: string;
        "sort_by[desc]"?: string;
    }
    interface tax_detail_create_params {
        tax_profile_id?: string;
    }
    interface tax_detail_create_params {
        avalara_tax_code?: string;
    }
    interface tax_detail_create_params {
        hsn_code?: string;
    }
    interface tax_detail_create_params {
        avalara_sale_type?: string;
    }
    interface tax_detail_create_params {
        avalara_transaction_type?: number;
    }
    interface tax_detail_create_params {
        avalara_service_type?: number;
    }
    interface tax_detail_create_params {
        taxjar_product_code?: string;
    }
    interface accounting_detail_create_params {
        sku?: string;
    }
    interface accounting_detail_create_params {
        accounting_code?: string;
    }
    interface accounting_detail_create_params {
        accounting_category1?: string;
    }
    interface accounting_detail_create_params {
        accounting_category2?: string;
    }
    interface accounting_detail_create_params {
        accounting_category3?: string;
    }
    interface accounting_detail_create_params {
        accounting_category4?: string;
    }
    interface tiers_create_params {
        starting_unit?: number;
    }
    interface tiers_create_params {
        ending_unit?: number;
    }
    interface tiers_create_params {
        price?: number;
    }
    interface tiers_create_params {
        starting_unit_in_decimal?: string;
    }
    interface tiers_create_params {
        ending_unit_in_decimal?: string;
    }
    interface tiers_create_params {
        price_in_decimal?: string;
    }
    interface tiers_create_params {
        pricing_type?: string;
    }
    interface tiers_create_params {
        package_size?: number;
    }
    interface tax_providers_fields_create_params {
        provider_name: string;
    }
    interface tax_providers_fields_create_params {
        field_id: string;
    }
    interface tax_providers_fields_create_params {
        field_value: string;
    }
    interface tax_detail_update_params {
        tax_profile_id?: string;
    }
    interface tax_detail_update_params {
        avalara_tax_code?: string;
    }
    interface tax_detail_update_params {
        hsn_code?: string;
    }
    interface tax_detail_update_params {
        avalara_sale_type?: string;
    }
    interface tax_detail_update_params {
        avalara_transaction_type?: number;
    }
    interface tax_detail_update_params {
        avalara_service_type?: number;
    }
    interface tax_detail_update_params {
        taxjar_product_code?: string;
    }
    interface accounting_detail_update_params {
        sku?: string;
    }
    interface accounting_detail_update_params {
        accounting_code?: string;
    }
    interface accounting_detail_update_params {
        accounting_category1?: string;
    }
    interface accounting_detail_update_params {
        accounting_category2?: string;
    }
    interface accounting_detail_update_params {
        accounting_category3?: string;
    }
    interface accounting_detail_update_params {
        accounting_category4?: string;
    }
    interface tiers_update_params {
        starting_unit?: number;
    }
    interface tiers_update_params {
        ending_unit?: number;
    }
    interface tiers_update_params {
        price?: number;
    }
    interface tiers_update_params {
        starting_unit_in_decimal?: string;
    }
    interface tiers_update_params {
        ending_unit_in_decimal?: string;
    }
    interface tiers_update_params {
        price_in_decimal?: string;
    }
    interface tiers_update_params {
        pricing_type?: string;
    }
    interface tiers_update_params {
        package_size?: number;
    }
    interface tax_providers_fields_update_params {
        provider_name: string;
    }
    interface tax_providers_fields_update_params {
        field_id: string;
    }
    interface tax_providers_fields_update_params {
        field_value: string;
    }
}
