/* tslint:disable */
import { EntityDTOBase } from './entity-dtobase';
import { KeyValueDTOOfStringAndString } from './key-value-dtoof-string-and-string';
import { AddresseeDTO } from './addressee-dto';
import { EnvironmentChannel } from './environment-channel';
import { LinkedRecordDTO } from './linked-record-dto';
import { OrderType } from './order-type';
import { PaymentDTO } from './payment-dto';
import { OrderProcessingStatus } from './order-processing-status';
import { AddressType } from './address-type';
import { ValidationStatus } from './validation-status';
export interface OrderListItemDTO extends EntityDTOBase{

  /**
   * Mögliche Aktionen
   */
  actions?: Array<KeyValueDTOOfStringAndString>;

  /**
   * Rechnungsadresse
   */
  billing?: AddresseeDTO;

  /**
   * Auftraggeber
   */
  buyer?: AddresseeDTO;

  /**
   * Gastkonto
   */
  buyerIsGuestAccount?: boolean;

  /**
   * Auftraggebernummer
   */
  buyerNumber?: string;

  /**
   * Bestellkanal
   */
  clientChannel?: EnvironmentChannel;

  /**
   * Währung
   */
  currency?: string;

  /**
   * Zusätzliche Markierungen
   */
  features?: {[key: string]: string};

  /**
   * Anzahl der Bestellposten (readonly)
   */
  itemsCount?: number;

  /**
   * Verknüpfte Datensätze (readonly)
   */
  linkedRecords?: Array<LinkedRecordDTO>;

  /**
   * Logistiker
   */
  logistician?: string;

  /**
   * Logistiker PK
   */
  logisticianId?: number;

  /**
   * Bestellfiliale
   */
  orderBranchId?: number;

  /**
   * Name der Bestellfiliale
   */
  orderBranchName?: string;

  /**
   * Bestelldatum
   */
  orderDate?: string;

  /**
   * Bestellnummer
   */
  orderNumber?: string;

  /**
   * Art der Bestellung
   */
  orderType?: OrderType;

  /**
   * Bestellwert (readonly)
   */
  orderValue?: number;

  /**
   * Gastkonto
   */
  payerIsGuestAccount?: boolean;

  /**
   * Regulierernummer
   */
  payerNumber?: string;

  /**
   * Zahlungsdetails
   */
  payment?: PaymentDTO;

  /**
   * Versandkosten
   */
  postage?: number;

  /**
   * Bearbeitungsstatus
   */
  processingStatus?: OrderProcessingStatus;

  /**
   * Lieferadresse
   */
  shipping?: AddresseeDTO;

  /**
   * Art der Lieferadresse
   */
  shippingAddressType?: AddressType;

  /**
   * Filiale
   */
  shopName?: string;

  /**
   * Zielfiliale
   */
  targetBranchId?: number;

  /**
   * Name der Zielfiliale
   */
  targetBranchName?: string;

  /**
   * Überprüfunsstatus
   */
  validationStatus?: ValidationStatus;
}
