import { Order, OrderStatus, OrderListMeta } from "../types/order";
import { ApiResult } from "../utils/helpers";
type SubmitOrderParams = {
    quantity: string;
    package_id: string;
    type?: string;
    description?: string;
    brand_settings_name?: string;
};
type SubmitOrderAsyncParams = SubmitOrderParams & {
    webhook_url?: string;
    to_email?: string;
    sharing_option?: ("link" | "pdf")[];
    copy_address?: string[];
};
type SubmitTopUpOrderParams = {
    package_id: string;
    iccid: string;
    description?: string;
};
type OrderListFilters = {
    include?: string;
    "filter[created_at]"?: string;
    "filter[code]"?: string;
    "filter[order_status]"?: string;
    "filter[iccid]"?: string;
    "filter[description]"?: string;
    limit?: number;
    page?: number;
};
export declare const SubmitOrder: (params: SubmitOrderParams) => Promise<ApiResult<Order>>;
export declare const SubmitOrderAsync: (params: SubmitOrderAsyncParams) => Promise<ApiResult<{
    message: string;
}>>;
export declare const SubmitTopUpOrder: (params: SubmitTopUpOrderParams) => Promise<ApiResult<Order>>;
export declare const GetOrderList: (params?: OrderListFilters) => Promise<ApiResult<Order[]> & {
    meta?: OrderListMeta;
}>;
export declare const GetOrder: (order_id: number | string) => Promise<ApiResult<Order>>;
export declare const GetOrderStatuses: (params?: {
    "filter[name]"?: string;
    limit?: number;
    page?: number;
}) => Promise<ApiResult<OrderStatus[]>>;
export declare const GetOrderStatusBySlug: (slug: string) => Promise<ApiResult<OrderStatus>>;
declare const _default: {
    SubmitOrder: (params: SubmitOrderParams) => Promise<ApiResult<Order>>;
    SubmitOrderAsync: (params: SubmitOrderAsyncParams) => Promise<ApiResult<{
        message: string;
    }>>;
    SubmitTopUpOrder: (params: SubmitTopUpOrderParams) => Promise<ApiResult<Order>>;
    GetOrderList: (params?: OrderListFilters) => Promise<ApiResult<Order[]> & {
        meta?: OrderListMeta;
    }>;
    GetOrder: (order_id: number | string) => Promise<ApiResult<Order>>;
    GetOrderStatuses: (params?: {
        "filter[name]"?: string;
        limit?: number;
        page?: number;
    }) => Promise<ApiResult<OrderStatus[]>>;
    GetOrderStatusBySlug: (slug: string) => Promise<ApiResult<OrderStatus>>;
};
export default _default;
