@springtree/eva-core
Version:
The EVA core typings
249 lines (219 loc) • 5.61 kB
TypeScript
declare module EVA.Sidekick {
export interface SetSidekickStatus {
RunningAsSidekick: boolean;
InternetAvailable: boolean;
EVACloudAvailable: boolean;
}
export interface TriggerSyncRequest {
}
export interface TriggerSyncResponse {
Error: EVA.Core.ServiceError;
}
export interface PushSidekickOrder {
SidekickOrderID?: string;
CreationTime?: string;
Remark?: string;
Customer?: CustomerDto;
ShippingAddress?: EVA.Core.AddressDataDto;
BillingAddress?: EVA.Core.AddressDataDto;
Lines?: OrderLineDto[];
Payments?: PaymentDto[];
}
export interface CustomerDto {
SidekickID: number;
FirstName: string;
LastName: string;
EmailAddress: string;
PhoneNumber: string;
LanguageID: string;
CountryID: string;
Gender: string;
}
export interface OrderLineDto {
ID: number;
BackendID: string;
CustomID: string;
UnitPriceInTax?: number;
TaxRate?: number;
Quantity: number;
Description: string;
Discounts: OrderLineDiscount[];
}
export interface OrderLineDiscount {
BackendID: string;
Description: string;
Amount?: number;
}
export interface PaymentDto {
BackendID: string;
Method: string;
Type: string;
Amount?: number;
Data: string;
ID: number;
ProxyID: string;
}
export interface PushSidekickOrderResponse {
ID: number;
AlreadyExists: boolean;
Error: EVA.Core.ServiceError;
}
export interface SidekickSyncCatalog {
}
export interface SidekickSyncCatalogResponse {
Products: ProductDto[];
Error: EVA.Core.ServiceError;
}
export interface ProductDto {
ID: number;
BackendID: string;
BrandName: string;
CustomID: string;
Name: string;
Type: EVA.Core.ProductTypes;
BackendSystemID: string;
BackendStatus: string;
LogicalLevel: string;
ConfigurableProperty: string;
ConfigurablePropertyValue: string;
TaxCode: string;
_data: EVA.Core.IProductSearchItem;
Data: string;
UnitPriceInTax?: number;
Children: number[];
HasParents: boolean;
Barcodes: string[];
GiftCardType: string;
GiftCardData: string;
}
export interface SidekickSyncGeneral {
}
export interface SidekickSyncGeneralResponse {
LedgerClasses: string[];
Currencies: CurrencyInfo[];
OrganizationUnit: OrganizationUnitDto;
Settings: { [key: string]: string };
PaymentTypes: PaymentTypeDto[];
MessageTemplates: MessageTemplateDto[];
Stations: StationDto[];
Devices: DeviceDto[];
Error: EVA.Core.ServiceError;
}
export interface CurrencyInfo {
ID: string;
Name: string;
}
export interface OrganizationUnitDto {
BackendID: string;
Name: string;
Description: string;
CashHandler: CashHandlerDto;
BackendRelationID: string;
BackendCompanyID: string;
BranchNumber: string;
GlobalLocationNumber: string;
Address: EVA.Core.AddressDataDto;
Status: EVA.Core.OrganizationUnitStatus;
Type: EVA.Core.OrganizationUnitTypes;
Latitude?: number;
Longitude?: number;
Subnet: string;
IpAddress: string;
BankAccount: string;
CocNumber: string;
VatNumber: string;
RegistrationNumber: string;
EmailAddress: string;
PhoneNumber: string;
UseForAccounting: boolean;
CountryID: string;
LanguageID: string;
CurrencyID: string;
CostPriceCurrencyID: string;
TimeZone: string;
AssortmentID: number;
}
export interface CashHandlerDto {
Name: string;
CurrencyID: string;
RoundingFactor?: number;
Coins: number[];
BankNotes: number[];
}
export interface PaymentTypeDto {
Name: string;
Code: string;
IsRoundingType: boolean;
IncludeInCashJournal: boolean;
IsExternal: boolean;
LedgerClassID: string;
PrintOnDocuments: boolean;
BackendRelationID: string;
BookPaymentMethodInvoice: boolean;
CanBeUsedForAuthorization: boolean;
AutoFinalizeOnOrderPaid: boolean;
}
export interface MessageTemplateDto {
Name: string;
Type: EVA.Core.MessageTemplateTypes;
Template: string;
Helpers: string;
Destination: EVA.Core.MessageTemplateDestinations;
PaperProperties: EVA.Core.PaperProperties;
IsDisabled: boolean;
}
export interface StationDto {
ID: number;
Name: string;
ProxyID: string;
}
export interface DeviceDto {
ID: number;
Name: string;
Types: string[];
NetworkName: string;
IpAddress: string;
StationID: number;
AssemblyName: string;
EcrID: string;
HardwareID: string;
ProxyID: string;
ConnectionType: EVA.Core.ConnectionType;
}
export interface SidekickSyncUsers {
}
export interface SidekickSyncUsersResponse {
Users: UserDto[];
Error: EVA.Core.ServiceError;
}
export interface UserDto {
EmailAddress: string;
Nickname: string;
FirstName: string;
LastName: string;
LanguageID: string;
CountryID: string;
Type: EVA.Core.UserTypes;
BackendSystemID: string;
BackendID: string;
TimeZone: string;
Functionalities: FunctionalityDto[];
AuthenticationData: AuthenticationDataDto[];
}
export interface FunctionalityDto {
Functionality: string;
FunctionalityScope: EVA.Core.FunctionalityScope;
UserType: EVA.Core.UserTypes;
}
export interface AuthenticationDataDto {
Type: string;
Data: string;
SearchKey: string;
}
export interface EVAStatus {
}
export interface EVAStatusResponse {
Ready: boolean;
Error: EVA.Core.ServiceError;
}
}