import { BaseEntity } from 'typeorm';
import { AddressEntity } from '../../address/entities/address.entity';
import { CarEntity } from '../../car/entities/car.entity';
import { DiscountEntity } from '../../discount/entities/discount.entity';
import { PollEntity } from '../../poll/entities/poll.entity';
import { ServiceReminderEntity } from '../../service/entities/service-reminder.entity';
import { UserEntity } from '../../user/entities/user.entity';
import { OrderItemEntity } from './order-item.entity';
import { PaymentEntity } from '../../payment/entities/payment.entity';
export declare enum OrderStatus {
    pending = 1,
    accepted = 2,
    sent = 3,
    delivered = 4,
    canceled = 5
}
export declare enum OrderPaymentStatus {
    pending = 1,
    paid = 2,
    failed = 3,
    returned = 4,
    cardToCard = 5,
    unsettledPaid = 6
}
export declare enum OrderPaymentMethod {
    online = "online",
    offline = "offline"
}
export declare enum OrderShippingType {
    normal = 1,
    fast = 2,
    custom = 3,
    peyk = 4,
    post = 5,
    inPerson = 6
}
export declare enum OrderPaymentGateway {
    meli = 1,
    zarinpal = 2,
    kimia = 3,
    bimehMelat = 4,
    snapp_pay = 5
}
export declare enum OrderClientType {
    site = 1,
    app = 2,
    panel = 3
}
export declare enum ShippingName {
    alopeyk = "alopeyk",
    mahex = "mahex"
}
export declare class OrderEntity extends BaseEntity {
    id: number;
    orderNumber: string;
    orderGuid: string;
    userId: string;
    sellerId: string;
    serviceManId: string | null;
    customerIp: string | null;
    orderStatusCode: OrderStatus | null;
    isDeleted: boolean;
    paymentStatusCode: OrderPaymentStatus | null;
    paymentMethodSystemName: OrderPaymentMethod | null;
    orderTax: number | null;
    vat: number | null;
    kilometers: number | null;
    minKilometersDay: number | null;
    maxKilometersDay: number | null;
    orderDiscount: number | null;
    orderShipping: number | null;
    orderTotal: number | null;
    wageTotal: number | null;
    customerOrderComment: string | null;
    bankRefCode: string | null;
    bankAuthority: string | null;
    isService: boolean | null;
    addressId: number | null;
    addressService: string | null;
    location: string | null;
    emailService: string | null;
    carId: number | null;
    date: string | null;
    time: string | null;
    isRequiredFactor: boolean | null;
    couponCode: string | null;
    couponDiscount: number | null;
    adminDiscountPercent: number | null;
    deductionsAmount: number;
    usedWalletAmount: number;
    finalAmount: number;
    serviceManRank: number | null;
    shippingType: OrderShippingType | null;
    shippingName: string | null;
    shippingOrderId: string | null;
    shippingOrderToken: string | null;
    paymentGateway: OrderPaymentGateway | null;
    clientType: OrderClientType;
    adminComment: string | null;
    taraToken: string | null;
    snappPayPaymentToken: string | null;
    governmentOilTrackingCode: string | null;
    cardToCardTrackingCode: string | null;
    cardToCardImageReceipt: string | null;
    createdAt: Date;
    updatedAt: Date;
    relatedOrder: OrderEntity[];
    coupon: DiscountEntity;
    orderItems: OrderItemEntity[];
    user: UserEntity;
    serviceMan: UserEntity;
    payments: PaymentEntity[];
    serviceReminders: ServiceReminderEntity[];
    car: CarEntity;
    polls: PollEntity[];
    address: AddressEntity;
    seller: UserEntity;
}
