import { Account, AccountCategory, AccountType, BoardingProcess, Company, CompanyCountry, CompanyCountryTax, CountryExchange, CountryReference, CountryReferenceCurrency, CountryReferenceExtraCharge, CountryReferenceProduct, Employee, EmployeeCustomerDhl, ExtraChargeEntity, Installation, Location, LocationEmployee, Parameter, ParameterConfig, ProductEntity, SupplyEntity, System, WorkflowConfig } from './api-companies.interfaces';
export type LocationEmployeesOut = {
    location_employees: LocationEmployee[];
    total: number;
};
export type LocationEmployeeBatchIn = {
    store_update: {
        location_id: number;
        employee_id: number;
        is_active: boolean;
    }[];
};
export type LocationEmployeeOut = {
    location_employee: LocationEmployee;
};
export type InstallationsOut = {
    installations: Installation[];
    total: number;
};
export type InstallationIn = {
    system_id: number;
    mac_address: string;
    ip_address: string;
    location_id: number;
    number: number;
};
export type InstallationOut = {
    installation: Installation;
};
export type LocationsOut = {
    locations: Location[];
    total: number;
};
export type LocationIn = {
    name: string;
    contact_name: string;
    email: string;
    facility_code: string;
    location_code: string;
    state_name: string;
    state_id: number;
    state_code: string;
    city_name: string;
    zip_code: string;
    county_name: string;
    address1: string;
    address2: string;
    address3: string;
    service_area_code: string;
    iata_code: string;
    phone_number: string;
    phone_code: string;
    is_active: boolean;
    gmt_offset: string;
    company_country_id: number;
    country_zone_id: number;
    country_region_id: number;
    management_area_id: number;
    route_number: string;
    locker_enabled: boolean;
    queue_manager_enabled: boolean;
    commission_account: string;
    type: string;
    facility_id: number;
    service_point_id: number;
    default_account_id: number;
};
export type LocationOut = {
    location: Location;
};
export type SupplyEntitiesIn = {
    model_type: string;
    model_id: number;
    check_all?: boolean;
    supply_entities: {
        id: number;
        is_active: boolean;
    }[];
};
export type SupplyEntitiesOut = {
    supply_entities: SupplyEntity[];
    total: number;
};
export type EmployeesOut = {
    employees: Employee[];
    total: number;
};
export type EmployeeIn = {
    auth_type: string;
    company_id: number;
    country_id: number;
    email: string;
    last_name: string;
    name: string;
    username: string;
    number: string;
    external: boolean;
    phone_code: string;
    phone_number: string;
    is_active: boolean;
    password: string;
    roles: string[];
};
export type EmployeeOut = {
    employee: Employee;
};
export type CompanyCountriesOut = {
    company_countries: CompanyCountry[];
    total: number;
};
export type CompanyCountryIn = {
    company_id: number;
    country_id: number;
    is_active: boolean;
    headquarters_city_code: string | null;
    lp_code: string | null;
    contact_name: string;
    contact_email: string;
    contact_phone_code: string;
    contact_phone_number: string;
    state: string | null;
    city: string | null;
    zip_code: string | null;
    county_name: string | null;
    address1: string;
    address2: string | null;
    address3: string | null;
};
export type CompanyCountryOut = {
    company_country: CompanyCountry;
};
export type CountryReferenceCurrencyIn = {
    is_local: boolean;
    can_transact: boolean;
    code: string;
    name: string;
    is_default: boolean;
    is_declared_insured: boolean;
    is_active: boolean;
};
export type CountryReferenceCurrencyOut = {
    country_reference_currency: CountryReferenceCurrency;
};
export type CountryReferenceCurrenciesOut = {
    country_reference_currencies: CountryReferenceCurrency[];
    total: number;
};
export type CompanyCountryTaxesOut = {
    company_country_taxes: CompanyCountryTax[];
    total: number;
};
export type ExchangeIn = {
    country_reference_currency_id: number;
    valid_since: string;
    valid_until?: string;
    value: string;
    type: string;
    is_active: boolean;
};
export type ExchangesOut = {
    exchanges: CountryExchange[];
    total: number;
};
export type ExchangeOut = {
    exchange: CountryExchange;
};
export type AccountsOut = {
    accounts: Account[];
    total: number;
};
export type AccountIn = {
    number: string;
    description: string;
    account_type_id: number;
    country_id: number;
};
export type AccountOut = {
    account: Account;
};
export type AccountEntitiesIn = {
    model_type: string;
    model_id: number;
    account_entities: {
        id: number;
        is_active: boolean;
    }[];
};
export type AccountEntitiesOut = {
    account_entities: Account[];
    total: number;
};
export type AccountCategoriesOut = {
    account_categories: AccountCategory[];
    total: number;
};
export type AccountTypeIn = {
    name: string;
    account_category_id: number;
};
export type AccountTypeOut = {
    account_type: AccountType;
};
export type AccountTypesOut = {
    account_types: AccountType[];
    total: number;
};
export type ParametersOut = {
    parameters: Parameter[];
    total: number;
};
export type ParametersValuesIn = {
    paramNames: string[];
};
export type ParametersValuesOut = {
    parameters: Parameter[];
    total: number;
};
export type ParametersByLevelIn = {
    name: string;
    model_type: string;
    model_id: number;
}[];
export type ParameterValueIn = {
    paramName: string;
};
export type ParameterValueOut = {
    value: string | boolean | number | {
        [key: string]: (string | boolean | number)[];
    };
};
export type CountryReferencesOut = {
    country_references: CountryReference[];
};
export type CountryReferenceIn = {
    decimal_point: number;
    decimal_separator: string;
    thousands_separator: string;
    use_billing: boolean;
    use_payments: boolean;
    currency_id: number;
    is_active: boolean;
    locale: string;
    language_id: number;
    restricted_import_countries: number[];
    max_quantity_document_piece: number;
    max_quantity_package_piece: number;
    weight_restriction_piece: number;
    restriction_shipment: number;
    restriction_dimension: number;
    max_declared_value: number;
    territories: number[];
    some_openings: boolean;
};
export type CountryReferenceOut = {
    country_reference: CountryReference;
};
export type CountryReferenceExtraChargeIn = {
    local_availability: boolean;
    mandatory: boolean;
    selected: boolean;
    shipment_scopes: number[];
    shipment_content_types: number[];
    value_local: number;
    value_usd: number;
    country_id: number;
    extra_charge_id: number;
};
export type CountryReferenceExtraChargeOut = {
    country_reference_extra_charge: CountryReferenceExtraCharge;
};
export type WorkflowsOut = {
    workflow: {
        page: string;
        enabled: boolean;
    }[];
    system_configuration: object;
};
export type EmployeesCustomersOut = {
    employee_customers: EmployeeCustomerDhl[];
    total: number;
};
export type EmployeeCustomersOut = {
    employee_customer: EmployeeCustomerDhl;
};
export type EmployeeCustomersIn = {
    identification_type_id: number;
    identification_type_value: string;
    name: string;
    last_name: string;
    address: string;
    phone_code: string;
    phone_number: string;
    email: string;
    country_id: number;
    employee_id: number | null;
    is_active: boolean;
};
export type BoardingProcessIn = {
    boarding_process: BoardingProcess;
};
export type BoardingProcessIdIn = {
    boarding_process_id: number;
    message: string;
};
export type SystemsOut = {
    systems: System[];
    total: number;
};
export type SystemIn = {
    name: string;
    type: string;
    can_workflow_config?: boolean;
    configuration: {
        [key: string]: string;
    };
};
export type SystemOut = {
    system: System;
};
export type SystemEntitiesIn = {
    model_type: string;
    model_id: number;
    system_entities: {
        id: number;
        is_active: boolean;
    }[];
};
export type SystemEntitiesOut = {
    system_entities: System[];
    total: number;
};
export type WorkflowConfigsBatchIn = {
    store: {
        system_id: number;
        model_type: string;
        model_id: number;
        page_id: number;
        enabled: boolean;
    }[];
    update: {
        system_id: number;
        model_type: string;
        model_id: number;
        page_id: number;
        enabled: boolean;
    }[];
};
export type WorkflowConfigsOut = {
    workflow_configs: WorkflowConfig[];
    total: number;
};
export type CompanyIn = {
    name: string;
    contact_name: string;
    contact_email: string;
    contact_phone_code: string;
    contact_phone_number: string;
    state: string | null;
    city: string | null;
    county_name: string | null;
    zip_code: string | null;
    address1: string;
    address2: string | null;
    address3: string | null;
    is_active: boolean;
};
export type CompanyOut = {
    company: Company;
};
export type ProductEntitiesIn = {
    model_type: string;
    model_id: number;
    product_entities: {
        id: number;
        is_active: boolean;
    }[];
};
export type ProductEntitiesOut = {
    product_entities: ProductEntity[];
    total: number;
};
export type CountryReferenceProductsOut = {
    country_reference_products: CountryReferenceProduct[];
    total: number;
};
export type CountryReferenceProductIn = {
    anti_drug_letter: boolean;
    business_letter: boolean;
    country_id: number;
    max_declared_value: number;
    max_weight: number;
    min_weight: number;
    packaging: boolean;
    product_id: number;
    shipment_content_types: number[];
    shipment_groups: number[];
    shipment_scopes: number[];
    local_name: string;
    insurance: number;
};
export type CountryReferenceProductOut = {
    country_reference_product: CountryReferenceProduct;
};
export type ExtraChargeEntitiesIn = {
    model_type: string;
    model_id: number;
    extracharge_entities: {
        id: number;
        is_active: boolean;
    }[];
};
export type ExtraChargeEntitiesOut = {
    extracharge_entities: ExtraChargeEntity[];
    total: number;
};
export type ParameterConfigsOut = {
    parameter_configs: ParameterConfig[];
    total: number;
};
export type ParameterConfigIn = {
    level: string;
    parameter_id: number;
    model_type: string;
    model_id: number;
    name: string;
    value: string;
};
export type ParameterConfigOut = {
    parameter_config: ParameterConfig;
    total: number;
};
