export interface DetailReportItem {
    realizationreport_id?: number;
    date_from?: string;
    date_to?: string;
    create_dt?: string;
    currency_name?: string;
    suppliercontract_code?: object;
    rrd_id?: number;
    gi_id?: number;
    subject_name?: string;
    nm_id?: number;
    brand_name?: string;
    sa_name?: string;
    ts_name?: string;
    barcode?: string;
    doc_type_name?: string;
    quantity?: number;
    retail_price?: number;
    retail_amount?: number;
    sale_percent?: number;
    commission_percent?: number;
    office_name?: string;
    supplier_oper_name?: string;
    order_dt?: string;
    sale_dt?: string;
    rr_dt?: string;
    shk_id?: number;
    retail_price_withdisc_rub?: number;
    delivery_amount?: number;
    return_amount?: number;
    delivery_rub?: number;
    gi_box_type_name?: string;
    product_discount_for_report?: number;
    supplier_promo?: number;
    rid?: number;
    ppvz_spp_prc?: number;
    ppvz_kvw_prc_base?: number;
    ppvz_kvw_prc?: number;
    sup_rating_prc_up?: number;
    is_kgvp_v2?: number;
    ppvz_sales_commission?: number;
    ppvz_for_pay?: number;
    ppvz_reward?: number;
    acquiring_fee?: number;
    acquiring_percent?: number;
    acquiring_bank?: string;
    ppvz_vw?: number;
    ppvz_vw_nds?: number;
    ppvz_office_id?: number;
    ppvz_office_name?: string;
    ppvz_supplier_id?: number;
    ppvz_supplier_name?: string;
    ppvz_inn?: string;
    declaration_number?: string;
    bonus_type_name?: string;
    sticker_id?: string;
    site_country?: string;
    penalty?: number;
    additional_payment?: number;
    rebill_logistic_cost?: number;
    rebill_logistic_org?: string;
    kiz?: string;
    storage_fee?: number;
    deduction?: number;
    acceptance?: number;
    srid?: string;
    report_type?: number;
}
export interface IncomesItem {
    incomeId?: number;
    number?: string;
    date?: string;
    lastChangeDate?: string;
    supplierArticle?: string;
    techSize?: string;
    barcode?: string;
    quantity?: number;
    totalPrice?: number;
    dateClose?: string;
    warehouseName?: string;
    nmId?: number;
    status?: "Принято";
}
export interface StocksItem {
    lastChangeDate?: string;
    warehouseName?: string;
    supplierArticle?: string;
    nmId?: number;
    barcode?: string;
    quantity?: number;
    inWayToClient?: number;
    inWayFromClient?: number;
    quantityFull?: number;
    category?: string;
    subject?: string;
    brand?: string;
    techSize?: string;
    Price?: number;
    Discount?: number;
    isSupply?: boolean;
    isRealization?: boolean;
    SCCode?: string;
}
export interface OrdersItem {
    date?: string;
    lastChangeDate?: string;
    warehouseName?: string;
    countryName?: string;
    oblastOkrugName?: string;
    regionName?: string;
    supplierArticle?: string;
    nmId?: number;
    barcode?: string;
    category?: string;
    subject?: string;
    brand?: string;
    techSize?: string;
    incomeID?: number;
    isSupply?: boolean;
    isRealization?: boolean;
    totalPrice?: number;
    discountPercent?: number;
    spp?: number;
    finishedPrice?: number;
    priceWithDisc?: number;
    isCancel?: boolean;
    cancelDate?: string;
    orderType?: string;
    sticker?: string;
    gNumber?: string;
    srid?: string;
}
export interface SalesItem {
    date?: string;
    lastChangeDate?: string;
    warehouseName?: string;
    countryName?: string;
    oblastOkrugName?: string;
    regionName?: string;
    supplierArticle?: string;
    nmId?: number;
    barcode?: string;
    category?: string;
    subject?: string;
    brand?: string;
    techSize?: string;
    incomeID?: number;
    isSupply?: boolean;
    isRealization?: boolean;
    totalPrice?: number;
    discountPercent?: number;
    spp?: number;
    paymentSaleAmount?: number;
    forPay?: number;
    finishedPrice?: number;
    priceWithDisc?: number;
    saleID?: string;
    orderType?: string;
    sticker?: string;
    gNumber?: string;
    srid?: string;
}
export interface ResponseErrorStatistics {
    errors?: string[];
}
export interface Response429 {
    code?: number;
    message?: string;
}
export type QueryParamsType = Record<string | number, any>;
export type ResponseFormat = keyof Omit<Body, "body" | "bodyUsed">;
export interface FullRequestParams extends Omit<RequestInit, "body"> {
    secure?: boolean;
    path: string;
    type?: ContentType;
    query?: QueryParamsType;
    format?: ResponseFormat;
    body?: unknown;
    baseUrl?: string;
    cancelToken?: CancelToken;
}
export type RequestParams = Omit<FullRequestParams, "body" | "method" | "query" | "path">;
export interface ApiConfig<SecurityDataType = unknown> {
    baseUrl?: string;
    baseApiParams?: Omit<RequestParams, "baseUrl" | "cancelToken" | "signal">;
    securityWorker?: (securityData: SecurityDataType | null) => Promise<RequestParams | void> | RequestParams | void;
    customFetch?: typeof fetch;
}
export interface HttpResponse<D extends unknown, E extends unknown = unknown> extends Response {
    data: D;
    error: E;
}
type CancelToken = Symbol | string | number;
export declare enum ContentType {
    Json = "application/json",
    FormData = "multipart/form-data",
    UrlEncoded = "application/x-www-form-urlencoded",
    Text = "text/plain"
}
export declare class HttpClient<SecurityDataType = unknown> {
    baseUrl: string;
    private securityData;
    private securityWorker?;
    private abortControllers;
    private customFetch;
    private baseApiParams;
    constructor(apiConfig?: ApiConfig<SecurityDataType>);
    setSecurityData: (data: SecurityDataType | null) => void;
    protected encodeQueryParam(key: string, value: any): string;
    protected addQueryParam(query: QueryParamsType, key: string): string;
    protected addArrayQueryParam(query: QueryParamsType, key: string): any;
    protected toQueryString(rawQuery?: QueryParamsType): string;
    protected addQueryParams(rawQuery?: QueryParamsType): string;
    private contentFormatters;
    protected mergeRequestParams(params1: RequestParams, params2?: RequestParams): RequestParams;
    protected createAbortSignal: (cancelToken: CancelToken) => AbortSignal | undefined;
    abortRequest: (cancelToken: CancelToken) => void;
    request: <T = any, E = any>({ body, secure, path, type, query, format, baseUrl, cancelToken, ...params }: FullRequestParams) => Promise<HttpResponse<T, E>>;
}
export declare class Api<SecurityDataType extends unknown> extends HttpClient<SecurityDataType> {
    api: {
        v1SupplierIncomesList: (query: {
            dateFrom: string;
        }, params?: RequestParams) => Promise<HttpResponse<IncomesItem[], void>>;
        v1SupplierStocksList: (query: {
            dateFrom: string;
        }, params?: RequestParams) => Promise<HttpResponse<StocksItem[], void>>;
        v1SupplierOrdersList: (query: {
            dateFrom: string;
            flag?: number;
        }, params?: RequestParams) => Promise<HttpResponse<OrdersItem[], void | ResponseErrorStatistics>>;
        v1SupplierSalesList: (query: {
            dateFrom: string;
            flag?: number;
        }, params?: RequestParams) => Promise<HttpResponse<SalesItem[], void | ResponseErrorStatistics>>;
        v5SupplierReportDetailByPeriodList: (query: {
            dateFrom: string;
            limit?: number;
            dateTo: string;
            rrdid?: number;
        }, params?: RequestParams) => Promise<HttpResponse<DetailReportItem[], void>>;
    };
}
export {};
//# sourceMappingURL=statistics.d.ts.map