Requires any of the roles: | bookingsupplier-administrator-write, bookingsupplier-administrator-read, superadmin |
GET | /schedules/date | Find date schedules for a company |
---|
"use strict";
export class QueryBase {
/** @param {{Skip?:number,Take?:number,OrderBy?:string,OrderByDesc?:string,Include?:string,Fields?:string,Meta?:{ [index: string]: string; }}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {?number}
* @description Skip over a given number of elements in a sequence and then return the remainder. Use this when you need paging.<br/><br/><strong>Example:</strong><br/><code>?skip=10&orderBy=Id</code> */
Skip;
/**
* @type {?number}
* @description Return a given number of elements in a sequence and then skip over the remainder. Use this when you need paging.<br/><br/><strong>Example:</strong><br/><code>?take=20</code> */
Take;
/**
* @type {string}
* @description Comma separated list of fields to order by. Prefix the field name with a minus if you wan't to invert the sort for that field.<br/><br/><strong>Example:</strong><br/><code>?orderBy=Id,-Age,FirstName</code> */
OrderBy;
/**
* @type {string}
* @description Comma separated list of fields to order by in descending order. Prefix the field name with a minus if you wan't to invert the sort for that field.<br/><br/><strong>Example:</strong><br/><code>?orderByDesc=Id,-Age,FirstName</code> */
OrderByDesc;
/**
* @type {string}
* @description Include any of the aggregates <code>AVG, COUNT, FIRST, LAST, MAX, MIN, SUM</code> in your result set. The results will be returned in the meta field.<br/><br/><strong>Example:</strong><br/><code>?include=COUNT(*) as Total</code><br/><br/>or multiple fields with<br/><code>?include=Count(*) Total, Min(Age), AVG(Age) AverageAge</code><br/></br>or unique with<br/><code>?include=COUNT(DISTINCT LivingStatus) as UniqueStatus</code> */
Include;
/** @type {string} */
Fields;
/** @type {{ [index: string]: string; }} */
Meta;
}
/** @typedef From {any} */
/** @typedef Into {any} */
export class QueryDb extends QueryBase {
/** @param {{Skip?:number,Take?:number,OrderBy?:string,OrderByDesc?:string,Include?:string,Fields?:string,Meta?:{ [index: string]: string; }}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
}
export class DateScheduleDateResponse {
/** @param {{Id?:number,From?:string,To?:string,ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {string} */
From;
/** @type {string} */
To;
/** @type {ResponseStatus} */
ResponseStatus;
}
export class ScheduleResources {
/** @param {{Id?:number,Name?:string,ImageUrl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/**
* @type {string}
* @description Name of the resource */
Name;
/**
* @type {string}
* @description The image url of the resource */
ImageUrl;
}
export class ScheduleServices {
/** @param {{Id?:number,Name?:string,ImageUrl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/**
* @type {string}
* @description Name of the service */
Name;
/**
* @type {string}
* @description The image url of the service */
ImageUrl;
}
export class DateScheduleQueryResponse {
/** @param {{Id?:number,Name?:string,Description?:string,Active?:boolean,IsResourceSpecific?:boolean,ScheduleDates?:DateScheduleDateResponse[],Resources?:ScheduleResources[],Services?:ScheduleServices[],UpdatedDate?:string,CreatedDate?:string,ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The schedule id */
Id;
/**
* @type {string}
* @description Name of the schedule */
Name;
/**
* @type {string}
* @description Description of the schedule */
Description;
/**
* @type {boolean}
* @description If the schedule is active or not */
Active;
/**
* @type {boolean}
* @description If the schedule is only connected to some specific resources. Note: You must have IncludeResources property to see this. */
IsResourceSpecific;
/**
* @type {DateScheduleDateResponse[]}
* @description Schedule dates */
ScheduleDates;
/**
* @type {ScheduleResources[]}
* @description The resources that is connected to the schedule */
Resources;
/**
* @type {ScheduleServices[]}
* @description The services that is connected to the schedule */
Services;
/**
* @type {string}
* @description The timestamp when the schedule was updated */
UpdatedDate;
/**
* @type {string}
* @description The timestamp when the schedule was created */
CreatedDate;
/** @type {ResponseStatus} */
ResponseStatus;
}
export class BaseModel {
constructor(init) { Object.assign(this, init) }
}
export class DateScheduleDate extends BaseModel {
/** @param {{CompanyId?:string,Id?:number,DateScheduleId?:number,UpdatedDate?:string,CreatedDate?:string,ModifiedDate?:string,From?:string,To?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {number} */
DateScheduleId;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
From;
/** @type {string} */
To;
}
/** @typedef {'NotDefined'|'RecurringSchedule'|'DateSchedule'} */
export var ScheduleType;
(function (ScheduleType) {
ScheduleType["NotDefined"] = "NotDefined"
ScheduleType["RecurringSchedule"] = "RecurringSchedule"
ScheduleType["DateSchedule"] = "DateSchedule"
})(ScheduleType || (ScheduleType = {}));
/** @typedef {number} */
export var BookingStatusEnum;
(function (BookingStatusEnum) {
BookingStatusEnum[BookingStatusEnum["Booked"] = 1] = "Booked"
BookingStatusEnum[BookingStatusEnum["Unbooked"] = 2] = "Unbooked"
BookingStatusEnum[BookingStatusEnum["Reserved"] = 3] = "Reserved"
BookingStatusEnum[BookingStatusEnum["Canceled"] = 4] = "Canceled"
BookingStatusEnum[BookingStatusEnum["AwaitingPayment"] = 5] = "AwaitingPayment"
BookingStatusEnum[BookingStatusEnum["AwaitingPaymentNoTimeLimit"] = 6] = "AwaitingPaymentNoTimeLimit"
BookingStatusEnum[BookingStatusEnum["Payed"] = 7] = "Payed"
BookingStatusEnum[BookingStatusEnum["AwaitingPaymentRequestFromAdmin"] = 8] = "AwaitingPaymentRequestFromAdmin"
BookingStatusEnum[BookingStatusEnum["AwaitingPaymentFromProvider"] = 9] = "AwaitingPaymentFromProvider"
BookingStatusEnum[BookingStatusEnum["Invoiced"] = 10] = "Invoiced"
})(BookingStatusEnum || (BookingStatusEnum = {}));
export class BookedCustomer {
/** @param {{Id?:string,Firstname?:string,Lastname?:string,Email?:string,Phone?:string,FacebookUserName?:string,ImageUrl?:string,CorporateIdentityNumber?:string,InvoiceAddress1?:string,InvoiceAddress2?:string,InvoiceCity?:string,InvoicePostalCode?:string,InvoiceCountryCode?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Id;
/** @type {string} */
Firstname;
/** @type {string} */
Lastname;
/** @type {string} */
Email;
/** @type {string} */
Phone;
/** @type {string} */
FacebookUserName;
/** @type {string} */
ImageUrl;
/** @type {string} */
CorporateIdentityNumber;
/** @type {string} */
InvoiceAddress1;
/** @type {string} */
InvoiceAddress2;
/** @type {string} */
InvoiceCity;
/** @type {string} */
InvoicePostalCode;
/** @type {string} */
InvoiceCountryCode;
}
export class CustomFieldValue extends BaseModel {
/** @param {{CompanyId?:string,Id?:number,Value?:string,Active?:boolean,SortOrder?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
Value;
/** @type {boolean} */
Active;
/** @type {?number} */
SortOrder;
/** @type {?string} */
ModifiedDate;
}
export class CustomField extends BaseModel {
/** @param {{Table?:string,Column?:string,DataType?:string,Description?:string,Active?:boolean,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Table;
/** @type {string} */
Column;
/** @type {string} */
DataType;
/** @type {string} */
Description;
/** @type {boolean} */
Active;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class RegEx extends BaseModel {
/** @param {{Name?:string,Description?:string,RegExCode?:string,ErrorMessage?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
RegExCode;
/** @type {string} */
ErrorMessage;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class ResourceType extends BaseModel {
/** @param {{SelectableByUser?:boolean,Resources?:Resource[],CompanyId?:string,Id?:number,Name?:string,Description?:string,Active?:boolean,UpdatedDate?:string,CreatedDate?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {boolean} */
SelectableByUser;
/** @type {Resource[]} */
Resources;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {boolean} */
Active;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {?string} */
ModifiedDate;
}
export class RebateCodeType extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class AppliedRebateCodes {
/** @param {{RebateCodeId?:number,RebateCodeSign?:string,RebateCodeValue?:number,RebateAmount?:number,RebateCodeType?:RebateCodeType}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
RebateCodeId;
/** @type {string} */
RebateCodeSign;
/** @type {number} */
RebateCodeValue;
/** @type {number} */
RebateAmount;
/** @type {RebateCodeType} */
RebateCodeType;
}
export class TotalPriceInformation {
/** @param {{TotalPrice?:number,TotalVATAmount?:number,TotalRebate?:number,TotalPriceBeforeRebate?:number,AppliedCodes?:AppliedRebateCodes[],PriceSign?:string,CurrencyId?:string,VAT?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
TotalPrice;
/** @type {number} */
TotalVATAmount;
/** @type {number} */
TotalRebate;
/** @type {number} */
TotalPriceBeforeRebate;
/** @type {AppliedRebateCodes[]} */
AppliedCodes;
/** @type {string} */
PriceSign;
/** @type {string} */
CurrencyId;
/** @type {number} */
VAT;
}
/** @typedef {number} */
export var Currency;
(function (Currency) {
Currency[Currency["SEK"] = 1] = "SEK"
Currency[Currency["EUR"] = 2] = "EUR"
})(Currency || (Currency = {}));
export class PriceMapping extends BaseModel {
/** @param {{CompanyId?:string,Id?:string,PriceId?:number,ReferenceType?:string,ExternalReference?:string,UpdatedDate?:string,CreatedDate?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {string} */
Id;
/** @type {number} */
PriceId;
/** @type {string} */
ReferenceType;
/** @type {string} */
ExternalReference;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {?string} */
ModifiedDate;
}
/** @typedef {number} */
export var BokaMeraDayOfWeek;
(function (BokaMeraDayOfWeek) {
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Monday"] = 1] = "Monday"
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Tuesday"] = 2] = "Tuesday"
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Wednesday"] = 3] = "Wednesday"
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Thursday"] = 4] = "Thursday"
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Friday"] = 5] = "Friday"
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Saturday"] = 6] = "Saturday"
BokaMeraDayOfWeek[BokaMeraDayOfWeek["Sunday"] = 7] = "Sunday"
})(BokaMeraDayOfWeek || (BokaMeraDayOfWeek = {}));
export class ServicePriceDayOfWeekRelation extends BaseModel {
/** @param {{DayOfWeek?:BokaMeraDayOfWeek,CompanyId?:string,ServicePriceId?:number,DayOfWeekId?:number,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {BokaMeraDayOfWeek} */
DayOfWeek;
/** @type {string} */
CompanyId;
/** @type {number} */
ServicePriceId;
/** @type {number} */
DayOfWeekId;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class ServerData {
/** @param {{HTTP_HOST?:string,HTTP_CONNECTION?:string,HTTP_CACHE_CONTROL?:string,HTTP_ACCEPT?:string,HTTP_USER_AGENT?:string,HTTP_ACCEPT_ENCODING?:string,HTTP_ACCEPT_LANGUAGE?:string,PATH?:string,SERVER_SOFTWARE?:string,SERVER_NAME?:string,SERVER_ADDR?:string,SERVER_PORT?:string,REMOTE_ADDR?:string,REMOTE_PORT?:string,GATEWAY_INTERFACE?:string,SERVER_PROTOCOL?:string,REQUEST_METHOD?:string,QUERY_STRING?:string,REQUEST_TIME?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
HTTP_HOST;
/** @type {string} */
HTTP_CONNECTION;
/** @type {string} */
HTTP_CACHE_CONTROL;
/** @type {string} */
HTTP_ACCEPT;
/** @type {string} */
HTTP_USER_AGENT;
/** @type {string} */
HTTP_ACCEPT_ENCODING;
/** @type {string} */
HTTP_ACCEPT_LANGUAGE;
/** @type {string} */
PATH;
/** @type {string} */
SERVER_SOFTWARE;
/** @type {string} */
SERVER_NAME;
/** @type {string} */
SERVER_ADDR;
/** @type {string} */
SERVER_PORT;
/** @type {string} */
REMOTE_ADDR;
/** @type {string} */
REMOTE_PORT;
/** @type {string} */
GATEWAY_INTERFACE;
/** @type {string} */
SERVER_PROTOCOL;
/** @type {string} */
REQUEST_METHOD;
/** @type {string} */
QUERY_STRING;
/** @type {string} */
REQUEST_TIME;
}
export class Credentials {
/** @param {{hash?:string,id?:string,version?:string,client?:string,serverdata?:ServerData,time?:string,test?:string,language?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
hash;
/** @type {string} */
id;
/** @type {string} */
version;
/** @type {string} */
client;
/** @type {ServerData} */
serverdata;
/** @type {string} */
time;
/** @type {string} */
test;
/** @type {string} */
language;
}
export class CheckoutData {
/** @param {{terms?:string,privacyPolicy?:string,redirectOnSuccess?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
terms;
/** @type {string} */
privacyPolicy;
/** @type {string} */
redirectOnSuccess;
}
export class CheckoutPaymentData {
/** @param {{currency?:string,language?:string,country?:string,autoactivate?:string,orderid?:string,returnmethod?:string,accepturl?:string,cancelurl?:string,callbackurl?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
currency;
/** @type {string} */
language;
/** @type {string} */
country;
/** @type {string} */
autoactivate;
/** @type {string} */
orderid;
/** @type {string} */
returnmethod;
/** @type {string} */
accepturl;
/** @type {string} */
cancelurl;
/** @type {string} */
callbackurl;
}
export class PaymentInfo {
/** @param {{paymentdate?:string,paymentterms?:string,yourreference?:string,ourreference?:string,projectname?:string,deliverymethod?:string,deliveryterms?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
paymentdate;
/** @type {string} */
paymentterms;
/** @type {string} */
yourreference;
/** @type {string} */
ourreference;
/** @type {string} */
projectname;
/** @type {string} */
deliverymethod;
/** @type {string} */
deliveryterms;
}
export class CartHandling {
/** @param {{withouttax?:string,taxrate?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
withouttax;
/** @type {string} */
taxrate;
}
export class CartTotal {
/** @param {{rounding?:string,withouttax?:string,tax?:string,withtax?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
rounding;
/** @type {string} */
withouttax;
/** @type {string} */
tax;
/** @type {string} */
withtax;
}
export class Shipping {
/** @param {{firstname?:string,lastname?:string,company?:string,street?:string,street2?:string,zip?:string,city?:string,country?:string,phone?:string,withouttax?:string,taxrate?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
firstname;
/** @type {string} */
lastname;
/** @type {string} */
company;
/** @type {string} */
street;
/** @type {string} */
street2;
/** @type {string} */
zip;
/** @type {string} */
city;
/** @type {string} */
country;
/** @type {string} */
phone;
/** @type {string} */
withouttax;
/** @type {string} */
taxrate;
}
export class Cart {
/** @param {{Handling?:CartHandling,Total?:CartTotal,Shipping?:Shipping}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {CartHandling} */
Handling;
/** @type {CartTotal} */
Total;
/** @type {Shipping} */
Shipping;
}
export class CustomerBilling {
/** @param {{firstname?:string,lastname?:string,company?:string,street?:string,street2?:string,zip?:string,city?:string,country?:string,phone?:string,email?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
firstname;
/** @type {string} */
lastname;
/** @type {string} */
company;
/** @type {string} */
street;
/** @type {string} */
street2;
/** @type {string} */
zip;
/** @type {string} */
city;
/** @type {string} */
country;
/** @type {string} */
phone;
/** @type {string} */
email;
}
export class QvicklyCustomer {
/** @param {{nr?:string,pno?:string,Billing?:CustomerBilling}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
nr;
/** @type {string} */
pno;
/** @type {CustomerBilling} */
Billing;
}
export class InitCheckoutData {
/** @param {{CheckoutData?:CheckoutData,PaymentData?:CheckoutPaymentData,PaymentInfo?:PaymentInfo,Articles?:QvicklyArticle[],Cart?:Cart,QvicklyCustomer?:QvicklyCustomer}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {CheckoutData} */
CheckoutData;
/** @type {CheckoutPaymentData} */
PaymentData;
/** @type {PaymentInfo} */
PaymentInfo;
/** @type {QvicklyArticle[]} */
Articles;
/** @type {Cart} */
Cart;
/** @type {QvicklyCustomer} */
QvicklyCustomer;
}
export class InitCheckoutRequestBody {
/** @param {{credentials?:Credentials,data?:InitCheckoutData,function?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {Credentials} */
credentials;
/** @type {InitCheckoutData} */
data;
/** @type {string} */
function;
}
export class QvicklyCheckoutResponse {
/** @param {{Number?:number,Status?:string,OrderId?:string,Url?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Number;
/** @type {string} */
Status;
/** @type {string} */
OrderId;
/** @type {string} */
Url;
}
export class QvikclyPaymentData {
/** @param {{method?:string,paymentplanid?:string,currency?:string,country?:string,language?:string,autoactivate?:string,orderid?:string,status?:string,paymentid_related?:string,url?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
method;
/** @type {string} */
paymentplanid;
/** @type {string} */
currency;
/** @type {string} */
country;
/** @type {string} */
language;
/** @type {string} */
autoactivate;
/** @type {string} */
orderid;
/** @type {string} */
status;
/** @type {string} */
paymentid_related;
/** @type {string} */
url;
}
export class Card {
/** @param {{promptname?:string,recurring?:string,recurringnr?:string,accepturl?:string,cancelurl?:string,callbackurl?:string,returnmethod?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
promptname;
/** @type {string} */
recurring;
/** @type {string} */
recurringnr;
/** @type {string} */
accepturl;
/** @type {string} */
cancelurl;
/** @type {string} */
callbackurl;
/** @type {string} */
returnmethod;
}
export class Settlement {
/** @param {{number?:string,date?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
number;
/** @type {string} */
date;
}
export class QvicklyPaymentResponse {
/** @param {{PaymentData?:QvikclyPaymentData,PaymentInfo?:PaymentInfo,Card?:Card,Settlement?:Settlement,QvicklyCustomer?:QvicklyCustomer,Articles?:QvicklyArticle[],Cart?:Cart}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {QvikclyPaymentData} */
PaymentData;
/** @type {PaymentInfo} */
PaymentInfo;
/** @type {Card} */
Card;
/** @type {Settlement} */
Settlement;
/** @type {QvicklyCustomer} */
QvicklyCustomer;
/** @type {QvicklyArticle[]} */
Articles;
/** @type {Cart} */
Cart;
}
/** @typedef {'None'|'Created'|'FormsFilled'|'ReadyToPay'|'ProcessingPayment'|'ReadyToShip'|'Shipped'|'PaidToAccount'|'Canceled'|'Credited'|'Expired'|'Denied'} */
export var Payson2CheckoutStatus;
(function (Payson2CheckoutStatus) {
Payson2CheckoutStatus["None"] = "None"
Payson2CheckoutStatus["Created"] = "Created"
Payson2CheckoutStatus["FormsFilled"] = "FormsFilled"
Payson2CheckoutStatus["ReadyToPay"] = "ReadyToPay"
Payson2CheckoutStatus["ProcessingPayment"] = "ProcessingPayment"
Payson2CheckoutStatus["ReadyToShip"] = "ReadyToShip"
Payson2CheckoutStatus["Shipped"] = "Shipped"
Payson2CheckoutStatus["PaidToAccount"] = "PaidToAccount"
Payson2CheckoutStatus["Canceled"] = "Canceled"
Payson2CheckoutStatus["Credited"] = "Credited"
Payson2CheckoutStatus["Expired"] = "Expired"
Payson2CheckoutStatus["Denied"] = "Denied"
})(Payson2CheckoutStatus || (Payson2CheckoutStatus = {}));
/** @typedef {'Person'|'Business'} */
export var CustomerType;
(function (CustomerType) {
CustomerType["Person"] = "Person"
CustomerType["Business"] = "Business"
})(CustomerType || (CustomerType = {}));
export class UserAccessKeys extends BaseModel {
/** @param {{CompanyId?:string,AccessKeyTypeId?:number,Value?:string,CustomerId?:string,Description?:string,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
AccessKeyTypeId;
/** @type {string} */
Value;
/** @type {string} */
CustomerId;
/** @type {string} */
Description;
/** @type {string} */
Id;
}
export class ExternalReference extends BaseModel {
/** @param {{CompanyId?:string,Id?:string,OwnerId?:string,ReferenceType?:string,ExternalData?:string,CreatedBy?:string,Updated?:string,Created?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {string} */
Id;
/** @type {string} */
OwnerId;
/** @type {string} */
ReferenceType;
/** @type {string} */
ExternalData;
/** @type {string} */
CreatedBy;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {?string} */
ModifiedDate;
}
/** @typedef {number} */
export var CompanyStatus;
(function (CompanyStatus) {
CompanyStatus[CompanyStatus["Registered"] = 1] = "Registered"
CompanyStatus[CompanyStatus["AwaitingApproval"] = 2] = "AwaitingApproval"
CompanyStatus[CompanyStatus["Approved"] = 3] = "Approved"
CompanyStatus[CompanyStatus["Inactive"] = 4] = "Inactive"
CompanyStatus[CompanyStatus["ClosedDown"] = 5] = "ClosedDown"
CompanyStatus[CompanyStatus["NotApproved"] = 6] = "NotApproved"
})(CompanyStatus || (CompanyStatus = {}));
export class ScheduleView extends BaseModel {
/** @param {{Name?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class WeekNumberSetting extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class BookingTemplate extends BaseModel {
/** @param {{Name?:string,Description?:string,UsedByApplication?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
UsedByApplication;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class CalendarType extends BaseModel {
/** @param {{Name?:string,Description?:string,Active?:boolean,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {boolean} */
Active;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class FreeSpotTexts extends BaseModel {
/** @param {{TextSingular?:string,TextPlural?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
TextSingular;
/** @type {string} */
TextPlural;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class BookingStatusOptions {
/** @param {{Id?:number,Name?:string,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {string} */
Description;
}
export class BookingSettings extends BaseModel {
/** @param {{FreeSpotTextsId?:number,SendEmailConfirmation?:boolean,ScheduleViewOptions?:ScheduleView[],WeekNumberSettingOptions?:WeekNumberSetting[],BookingTemplateOptions?:BookingTemplate[],CalendarTypeOptions?:CalendarType[],FreeSpotTextOptions?:FreeSpotTexts[],BookingStatusOptions?:BookingStatusOptions[],FreeSpotTextsInfo?:FreeSpotTexts,FreeSpotsTextSingular?:string,FreeSpotsTextPlural?:string,BookingStatusId?:number,ScheduleViewId?:number,BookingTemplateId?:number,CalendarTypeId?:number,AllowBookingOnUnbookedTimes?:boolean,SendEmailReminder?:boolean,SendSmsReminder?:boolean,SendSmsConfirmation?:boolean,EmailReminderTime?:number,SmsReminderTime?:number,MaxActiveBookings?:number,SendNotifications?:boolean,SendNotificationsEmail?:string,EnableMobileApp?:boolean,ScheduleStartTime?:string,ScheduleEndTime?:string,ReceiptTemplate?:string,ScheduleTimeSlotMinutes?:number,ShowFreeTimesLeft?:boolean,EnableICalGroupBookings?:boolean,AgreementTemplate?:string,ScheduleShowTimeExeptions?:boolean,EnableBookingsOnSameTime?:boolean,ShowWeekNumberSettingId?:number,EnableShowBookedTimes?:boolean,EnableSendFollowUpMessage?:boolean,FollowUpMessageTime?:number,MessageText?:string,ScheduleGroupResources?:boolean,BookSpotUserResponseMinutes?:number,IsBookSpotDirectly?:boolean,BookSpotDirectlyTimeLeftMinutes?:number,SendEmailNotificationQueue?:boolean,SendSMSNotificationQueue?:boolean,SchedulerDisableHorizontalScrolling?:boolean,BookOnlyOnExistingCustomers?:boolean,AutoGenerateUniquePinCode?:boolean,WeightedPrices?:boolean,ModifiedDate?:string,AutoCreateUserProfile?:boolean,ShowMultipleResourcesAsOne?:boolean,ShowMultiDayAsTime?:boolean,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
FreeSpotTextsId;
/** @type {boolean} */
SendEmailConfirmation;
/** @type {ScheduleView[]} */
ScheduleViewOptions;
/** @type {WeekNumberSetting[]} */
WeekNumberSettingOptions;
/** @type {BookingTemplate[]} */
BookingTemplateOptions;
/** @type {CalendarType[]} */
CalendarTypeOptions;
/** @type {FreeSpotTexts[]} */
FreeSpotTextOptions;
/** @type {BookingStatusOptions[]} */
BookingStatusOptions;
/** @type {FreeSpotTexts} */
FreeSpotTextsInfo;
/** @type {string} */
FreeSpotsTextSingular;
/** @type {string} */
FreeSpotsTextPlural;
/** @type {number} */
BookingStatusId;
/** @type {number} */
ScheduleViewId;
/** @type {number} */
BookingTemplateId;
/** @type {number} */
CalendarTypeId;
/** @type {boolean} */
AllowBookingOnUnbookedTimes;
/** @type {boolean} */
SendEmailReminder;
/** @type {boolean} */
SendSmsReminder;
/** @type {boolean} */
SendSmsConfirmation;
/** @type {number} */
EmailReminderTime;
/** @type {number} */
SmsReminderTime;
/** @type {number} */
MaxActiveBookings;
/** @type {boolean} */
SendNotifications;
/** @type {string} */
SendNotificationsEmail;
/** @type {boolean} */
EnableMobileApp;
/** @type {?string} */
ScheduleStartTime;
/** @type {?string} */
ScheduleEndTime;
/** @type {string} */
ReceiptTemplate;
/** @type {number} */
ScheduleTimeSlotMinutes;
/** @type {boolean} */
ShowFreeTimesLeft;
/** @type {boolean} */
EnableICalGroupBookings;
/** @type {string} */
AgreementTemplate;
/** @type {boolean} */
ScheduleShowTimeExeptions;
/** @type {boolean} */
EnableBookingsOnSameTime;
/** @type {number} */
ShowWeekNumberSettingId;
/** @type {boolean} */
EnableShowBookedTimes;
/** @type {boolean} */
EnableSendFollowUpMessage;
/** @type {number} */
FollowUpMessageTime;
/** @type {string} */
MessageText;
/** @type {boolean} */
ScheduleGroupResources;
/** @type {number} */
BookSpotUserResponseMinutes;
/** @type {boolean} */
IsBookSpotDirectly;
/** @type {number} */
BookSpotDirectlyTimeLeftMinutes;
/** @type {boolean} */
SendEmailNotificationQueue;
/** @type {boolean} */
SendSMSNotificationQueue;
/** @type {boolean} */
SchedulerDisableHorizontalScrolling;
/** @type {boolean} */
BookOnlyOnExistingCustomers;
/** @type {boolean} */
AutoGenerateUniquePinCode;
/** @type {boolean} */
WeightedPrices;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
AutoCreateUserProfile;
/** @type {boolean} */
ShowMultipleResourcesAsOne;
/** @type {boolean} */
ShowMultiDayAsTime;
/** @type {string} */
Id;
}
export class CompanyType extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class CodeLockSystem extends BaseModel {
/** @param {{Name?:string,Supplier?:string,LogoType?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Supplier;
/** @type {string} */
LogoType;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class CodeLockSetting extends BaseModel {
/** @param {{CodeLockSystemOptions?:CodeLockSystem[],Active?:boolean,CodeLockSystemsId?:number,ValidBeforeMinutes?:number,ValidAfterMinutes?:number,DeleteOldBySchedule?:boolean,Created?:string,Updated?:string,ModifiedDate?:string,SendEmailNotification?:boolean,SendSMSNotification?:boolean,EmailNotificationTime?:number,SMSNotificationTime?:number,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {CodeLockSystem[]} */
CodeLockSystemOptions;
/** @type {boolean} */
Active;
/** @type {number} */
CodeLockSystemsId;
/** @type {number} */
ValidBeforeMinutes;
/** @type {number} */
ValidAfterMinutes;
/** @type {boolean} */
DeleteOldBySchedule;
/** @type {string} */
Created;
/** @type {string} */
Updated;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
SendEmailNotification;
/** @type {boolean} */
SendSMSNotification;
/** @type {number} */
EmailNotificationTime;
/** @type {number} */
SMSNotificationTime;
/** @type {string} */
Id;
}
export class AdminPaymentOptions extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class PaymentProviders extends BaseModel {
/** @param {{Name?:string,Description?:string,Category?:string,Url?:string,Active?:boolean,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Category;
/** @type {string} */
Url;
/** @type {boolean} */
Active;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class PaymentSetting extends BaseModel {
/** @param {{AdminPaymentOption?:AdminPaymentOptions,AdminPaymentOptions?:AdminPaymentOptions[],PaymentProviderOptions?:PaymentProviders[],Enabled?:boolean,InvoiceFee?:number,AllowCreditCardPayment?:boolean,AllowInvoicePayment?:boolean,AllowBankPayment?:boolean,GuaranteeOffered?:boolean,RefundOnCancelBooking?:boolean,DefaultPaymentOptionId?:number,PaymentProviderId?:number,SendPaymentRequestDirectly?:boolean,ModifiedDate?:string,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {AdminPaymentOptions} */
AdminPaymentOption;
/** @type {AdminPaymentOptions[]} */
AdminPaymentOptions;
/** @type {PaymentProviders[]} */
PaymentProviderOptions;
/** @type {boolean} */
Enabled;
/** @type {number} */
InvoiceFee;
/** @type {boolean} */
AllowCreditCardPayment;
/** @type {boolean} */
AllowInvoicePayment;
/** @type {boolean} */
AllowBankPayment;
/** @type {boolean} */
GuaranteeOffered;
/** @type {boolean} */
RefundOnCancelBooking;
/** @type {?number} */
DefaultPaymentOptionId;
/** @type {number} */
PaymentProviderId;
/** @type {boolean} */
SendPaymentRequestDirectly;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
Id;
}
export class LanguageResponse {
/** @param {{Id?:string,Name?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Id;
/** @type {string} */
Name;
}
export class CompanySetting extends BaseModel {
/** @param {{Languages?:LanguageResponse[],Active?:boolean,InactiveMessage?:string,Searchable?:boolean,GATrackingId?:string,FacebookPixelId?:string,MultiLanguage?:boolean,EnableAPITranslation?:boolean,DefaultLanguage?:string,ModifiedDate?:string,GTMTrackingId?:string,ShowOnMarketPlace?:boolean,GoogleAdsConversionId?:string,LinkedinTagId?:string,GoogleAdsConversionLabel?:string,SendCustomerInformationToExternalProviders?:boolean,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {LanguageResponse[]} */
Languages;
/** @type {boolean} */
Active;
/** @type {string} */
InactiveMessage;
/** @type {boolean} */
Searchable;
/** @type {string} */
GATrackingId;
/** @type {string} */
FacebookPixelId;
/** @type {boolean} */
MultiLanguage;
/** @type {boolean} */
EnableAPITranslation;
/** @type {string} */
DefaultLanguage;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
GTMTrackingId;
/** @type {boolean} */
ShowOnMarketPlace;
/** @type {string} */
GoogleAdsConversionId;
/** @type {string} */
LinkedinTagId;
/** @type {string} */
GoogleAdsConversionLabel;
/** @type {boolean} */
SendCustomerInformationToExternalProviders;
/** @type {string} */
Id;
}
export class WidgetServiceLayouts extends BaseModel {
/** @param {{Name?:string,Description?:string,Code?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Code;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class WidgetTimeLayouts extends BaseModel {
/** @param {{Name?:string,Description?:string,Code?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Code;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class WidgetBookingLayouts extends BaseModel {
/** @param {{Name?:string,Description?:string,Code?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Code;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class WidgetBookingMethods extends BaseModel {
/** @param {{Name?:string,Description?:string,Code?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Code;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class HomepageWidgetSetting extends BaseModel {
/** @param {{WidgetServiceLayoutOptions?:WidgetServiceLayouts[],WidgetTimeLayoutOptions?:WidgetTimeLayouts[],WidgetBookingLayoutOptions?:WidgetBookingLayouts[],WidgetBookingMethodOptions?:WidgetBookingMethods[],ServiceLayoutId?:number,TimeLayoutId?:number,BookingLayoutId?:number,PrimaryColor?:string,ShowServiceImage?:boolean,ShowNextAvailableTime?:boolean,ShowEndTime?:boolean,BookedTimeSlotText?:string,DarkTheme?:boolean,ShowRebateCodeField?:boolean,ModifiedDate?:string,EnableCreateAccount?:boolean,EnableLogin?:boolean,EnableDirectBooking?:boolean,EnableFacebookLogin?:boolean,ShowSubscribeToNewsletter?:boolean,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {WidgetServiceLayouts[]} */
WidgetServiceLayoutOptions;
/** @type {WidgetTimeLayouts[]} */
WidgetTimeLayoutOptions;
/** @type {WidgetBookingLayouts[]} */
WidgetBookingLayoutOptions;
/** @type {WidgetBookingMethods[]} */
WidgetBookingMethodOptions;
/** @type {number} */
ServiceLayoutId;
/** @type {number} */
TimeLayoutId;
/** @type {number} */
BookingLayoutId;
/** @type {string} */
PrimaryColor;
/** @type {boolean} */
ShowServiceImage;
/** @type {boolean} */
ShowNextAvailableTime;
/** @type {boolean} */
ShowEndTime;
/** @type {string} */
BookedTimeSlotText;
/** @type {boolean} */
DarkTheme;
/** @type {boolean} */
ShowRebateCodeField;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
EnableCreateAccount;
/** @type {boolean} */
EnableLogin;
/** @type {boolean} */
EnableDirectBooking;
/** @type {boolean} */
EnableFacebookLogin;
/** @type {boolean} */
ShowSubscribeToNewsletter;
/** @type {string} */
Id;
}
export class HomepageTemplate extends BaseModel {
/** @param {{Name?:string,Description?:string,ImageUrl?:string,Premium?:boolean,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
ImageUrl;
/** @type {boolean} */
Premium;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class HeroSectionStyle extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class HomepageSetting extends BaseModel {
/** @param {{HomepageTemplateOptions?:HomepageTemplate[],HomepageHeroSectionStyleOptions?:HeroSectionStyle[],CompanyId?:string,WelcomePageHeading?:string,WelcomePageBody?:string,AboutUsPageHeading?:string,AboutUsPageBody?:string,HomePageTemplateId?:number,ImageUrl?:string,Updated?:string,Created?:string,HomepageHeading?:string,HeroSectionStyleId?:number,ModifiedDate?:string,ShowRating?:boolean,EnableHomepage?:boolean,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {HomepageTemplate[]} */
HomepageTemplateOptions;
/** @type {HeroSectionStyle[]} */
HomepageHeroSectionStyleOptions;
/** @type {?string} */
CompanyId;
/** @type {string} */
WelcomePageHeading;
/** @type {string} */
WelcomePageBody;
/** @type {string} */
AboutUsPageHeading;
/** @type {string} */
AboutUsPageBody;
/** @type {number} */
HomePageTemplateId;
/** @type {string} */
ImageUrl;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {string} */
HomepageHeading;
/** @type {number} */
HeroSectionStyleId;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
ShowRating;
/** @type {boolean} */
EnableHomepage;
/** @type {string} */
Id;
}
export class AverageRatingScore {
/** @param {{AverageScore?:number,Score1Count?:number,Score2Count?:number,Score3Count?:number,Score4Count?:number,Score5Count?:number,Count?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
AverageScore;
/** @type {number} */
Score1Count;
/** @type {number} */
Score2Count;
/** @type {number} */
Score3Count;
/** @type {number} */
Score4Count;
/** @type {number} */
Score5Count;
/** @type {number} */
Count;
}
export class Review extends BaseModel {
/** @param {{ReviewId?:string,CompanyId?:string,Title?:string,Description?:string,Author?:string,Status?:number,Created?:string,Updated?:string,ModifiedDate?:string,ReviewAnswer?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
ReviewId;
/** @type {string} */
CompanyId;
/** @type {string} */
Title;
/** @type {string} */
Description;
/** @type {string} */
Author;
/** @type {number} */
Status;
/** @type {string} */
Created;
/** @type {string} */
Updated;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
ReviewAnswer;
}
export class Rating extends BaseModel {
/** @param {{ReviewId?:string,Review?:Review,CompanyId?:string,BookingId?:number,RatingScore?:number,Status?:number,Created?:string,Updated?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {?string} */
ReviewId;
/** @type {Review} */
Review;
/** @type {string} */
CompanyId;
/** @type {number} */
BookingId;
/** @type {number} */
RatingScore;
/** @type {number} */
Status;
/** @type {string} */
Created;
/** @type {string} */
Updated;
/** @type {?string} */
ModifiedDate;
}
export class LicenseTypeItem extends BaseModel {
/** @param {{Name?:string,LicenseType?:LicenseType,LicenseTypesId?:number,LicenseItemsId?:number,NumberOfItems?:number,Id?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {LicenseType} */
LicenseType;
/** @type {number} */
LicenseTypesId;
/** @type {number} */
LicenseItemsId;
/** @type {number} */
NumberOfItems;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
}
export class Country extends BaseModel {
/** @param {{CurrencyId?:string,CurrencyInfo?:Currency,Name?:string,Culture?:string,TimeZone?:string,ModifiedDate?:string,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CurrencyId;
/** @type {Currency} */
CurrencyInfo;
/** @type {string} */
Name;
/** @type {string} */
Culture;
/** @type {string} */
TimeZone;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
Id;
}
export class LicensePrice extends BaseModel {
/** @param {{Country?:Country,MonthlyPayment?:boolean,LicenseTypeId?:number,CountryId?:string,Price?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {Country} */
Country;
/** @type {boolean} */
MonthlyPayment;
/** @type {number} */
LicenseTypeId;
/** @type {string} */
CountryId;
/** @type {number} */
Price;
/** @type {?string} */
ModifiedDate;
}
export class LicenseType extends BaseModel {
/** @param {{LicenseItems?:IList<LicenseTypeItem>,Prices?:IList<LicensePrice>,PeriodOfNoticeDays?:number,NextLicenseOption?:LicenseType,Name?:string,Description?:string,ExtraLicenseOption?:boolean,ModifiedDate?:string,Active?:boolean,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {IList<LicenseTypeItem>} */
LicenseItems;
/** @type {IList<LicensePrice>} */
Prices;
/** @type {number} */
PeriodOfNoticeDays;
/** @type {LicenseType} */
NextLicenseOption;
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {boolean} */
ExtraLicenseOption;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
Active;
/** @type {number} */
Id;
}
export class License extends BaseModel {
/** @param {{Type?:LicenseType,CompanyId?:string,Id?:number,TypeId?:number,ValidFrom?:string,ValidTo?:string,Active?:boolean,Updated?:string,Created?:string,ModifiedDate?:string,MetaData?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {LicenseType} */
Type;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {number} */
TypeId;
/** @type {string} */
ValidFrom;
/** @type {string} */
ValidTo;
/** @type {boolean} */
Active;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
MetaData;
}
export class CompanyCategory extends BaseModel {
/** @param {{Name?:string,Header?:string,Description?:string,ImageUrl?:string,Active?:boolean,SortOrder?:number,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Header;
/** @type {string} */
Description;
/** @type {string} */
ImageUrl;
/** @type {boolean} */
Active;
/** @type {?number} */
SortOrder;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class Company extends BaseModel {
/** @param {{Status?:CompanyStatus,Active?:boolean,CustomerCustomFieldsConfig?:IList<CustomFieldConfig>,BookingAgreements?:string,BookingSettings?:BookingSettings,CompanyType?:CompanyType,CodeLockSettings?:CodeLockSetting,PaymentSettings?:PaymentSetting,Settings?:CompanySetting,WidgetSettings?:HomepageWidgetSetting,HomepageSettings?:HomepageSetting,RatingScore?:AverageRatingScore,Ratings?:Rating[],Distance?:number,Licenses?:License[],ActiveLicenses?:License[],CurrentLicense?:License,IsFreeAccount?:boolean,DefaultLanguage?:CultureInfo,Category?:CompanyCategory,Lat?:number,Lon?:number,IsFavorite?:boolean,ExternalReferences?:IList<ExternalReference>,OrganisationNumber?:string,StatusId?:number,CategoryId?:number,SitePath?:string,Name?:string,Street1?:string,Street2?:string,ZipCode?:string,City?:string,OpeningHours?:string,FaxNumber?:string,Email?:string,Phone?:string,Details?:string,LogoType?:string,ApprovedByAdmin?:boolean,Updated?:string,Created?:string,IpAddress?:string,Homepage?:string,DomainName?:string,CountryId?:string,CompanyOwnerId?:number,TypeId?:number,ModifiedDate?:string,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {CompanyStatus} */
Status;
/** @type {boolean} */
Active;
/** @type {IList<CustomFieldConfig>} */
CustomerCustomFieldsConfig;
/** @type {string} */
BookingAgreements;
/** @type {BookingSettings} */
BookingSettings;
/** @type {CompanyType} */
CompanyType;
/** @type {CodeLockSetting} */
CodeLockSettings;
/** @type {PaymentSetting} */
PaymentSettings;
/** @type {CompanySetting} */
Settings;
/** @type {HomepageWidgetSetting} */
WidgetSettings;
/** @type {HomepageSetting} */
HomepageSettings;
/** @type {AverageRatingScore} */
RatingScore;
/** @type {Rating[]} */
Ratings;
/** @type {?number} */
Distance;
/** @type {License[]} */
Licenses;
/** @type {License[]} */
ActiveLicenses;
/** @type {License} */
CurrentLicense;
/** @type {boolean} */
IsFreeAccount;
/** @type {CultureInfo} */
DefaultLanguage;
/** @type {CompanyCategory} */
Category;
/** @type {number} */
Lat;
/** @type {number} */
Lon;
/** @type {boolean} */
IsFavorite;
/** @type {IList<ExternalReference>} */
ExternalReferences;
/** @type {string} */
OrganisationNumber;
/** @type {number} */
StatusId;
/** @type {number} */
CategoryId;
/** @type {string} */
SitePath;
/** @type {string} */
Name;
/** @type {string} */
Street1;
/** @type {string} */
Street2;
/** @type {string} */
ZipCode;
/** @type {string} */
City;
/** @type {string} */
OpeningHours;
/** @type {string} */
FaxNumber;
/** @type {string} */
Email;
/** @type {string} */
Phone;
/** @type {string} */
Details;
/** @type {string} */
LogoType;
/** @type {boolean} */
ApprovedByAdmin;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {string} */
IpAddress;
/** @type {string} */
Homepage;
/** @type {string} */
DomainName;
/** @type {string} */
CountryId;
/** @type {number} */
CompanyOwnerId;
/** @type {?number} */
TypeId;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
Id;
}
export class CustomFieldDataResponse {
/** @param {{Id?:number,Column?:string,Name?:string,Description?:string,Value?:string,DataType?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {string} */
Column;
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Value;
/**
* @type {string}
* @description Data field of custom field. Valid values are: TextBox, ... Example: 'TextBox' */
DataType;
}
export class CustomerComment extends BaseModel {
/** @param {{CompanyId?:string,Id?:number,CustomerId?:string,Comments?:string,Updated?:string,Created?:string,ImageUrl?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
CustomerId;
/** @type {string} */
Comments;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {string} */
ImageUrl;
/** @type {?string} */
ModifiedDate;
}
export class Customer extends BaseModel {
/** @param {{IdentityId?:number,Id?:string,CustomerId?:string,AccessKeys?:IList<UserAccessKeys>,Email?:string,ExternalReferences?:IList<ExternalReference>,Company?:Company,CustomFieldsConfig?:IList<CustomFieldConfig>,CustomFieldsData?:IList<CustomFieldDataResponse>,Comments?:IList<CustomerComment>,RebateCodes?:IList<RebateCode>,Firstname?:string,ImageUrl?:string,Active?:boolean,FacebookUsername?:string,Updated?:string,Created?:string,IpAddress?:string,ModifiedDate?:string,TextField1?:string,TextField2?:string,TextField3?:string,TextField4?:string,TextField5?:string,TextField6?:string,TextField7?:string,TextField8?:string,TextField9?:string,TextField10?:string,TextField11?:string,TextField12?:string,TextField13?:string,TextField14?:string,TextField15?:string,TextField16?:string,TextField17?:string,TextField18?:string,TextField19?:string,TextField20?:string,UserId?:string,Lastname?:string,Phone?:string,CorporateIdentityNumber?:string,InvoiceAddress1?:string,InvoiceAddress2?:string,InvoiceCity?:string,InvoicePostalCode?:string,InvoiceCountryCode?:string,CompanyId?:string,SubscribedToNewsletter?:boolean}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
IdentityId;
/** @type {string} */
Id;
/** @type {string} */
CustomerId;
/** @type {IList<UserAccessKeys>} */
AccessKeys;
/** @type {string} */
Email;
/** @type {IList<ExternalReference>} */
ExternalReferences;
/** @type {Company} */
Company;
/** @type {IList<CustomFieldConfig>} */
CustomFieldsConfig;
/** @type {IList<CustomFieldDataResponse>} */
CustomFieldsData;
/** @type {IList<CustomerComment>} */
Comments;
/** @type {IList<RebateCode>} */
RebateCodes;
/** @type {string} */
Firstname;
/** @type {string} */
ImageUrl;
/** @type {boolean} */
Active;
/** @type {string} */
FacebookUsername;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {string} */
IpAddress;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
TextField1;
/** @type {string} */
TextField2;
/** @type {string} */
TextField3;
/** @type {string} */
TextField4;
/** @type {string} */
TextField5;
/** @type {string} */
TextField6;
/** @type {string} */
TextField7;
/** @type {string} */
TextField8;
/** @type {string} */
TextField9;
/** @type {string} */
TextField10;
/** @type {string} */
TextField11;
/** @type {string} */
TextField12;
/** @type {string} */
TextField13;
/** @type {string} */
TextField14;
/** @type {string} */
TextField15;
/** @type {string} */
TextField16;
/** @type {string} */
TextField17;
/** @type {string} */
TextField18;
/** @type {string} */
TextField19;
/** @type {string} */
TextField20;
/** @type {string} */
UserId;
/** @type {string} */
Lastname;
/** @type {string} */
Phone;
/** @type {string} */
CorporateIdentityNumber;
/** @type {string} */
InvoiceAddress1;
/** @type {string} */
InvoiceAddress2;
/** @type {string} */
InvoiceCity;
/** @type {string} */
InvoicePostalCode;
/** @type {string} */
InvoiceCountryCode;
/** @type {string} */
CompanyId;
/** @type {boolean} */
SubscribedToNewsletter;
}
/** @typedef {'Physical'|'Service'|'Fee'|'Discount'} */
export var ItemType;
(function (ItemType) {
ItemType["Physical"] = "Physical"
ItemType["Service"] = "Service"
ItemType["Fee"] = "Fee"
ItemType["Discount"] = "Discount"
})(ItemType || (ItemType = {}));
export class Item {
/** @param {{ItemId?:string,DiscountRate?:number,Ean?:string,ImageUri?:string,Name?:string,Quantity?:number,Reference?:string,TaxRate?:number,TotalPriceExcludingTax?:number,TotalPriceIncludingTax?:number,TotalTaxAmount?:number,CreditedAmount?:number,Type?:ItemType,UnitPrice?:number,Uri?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
ItemId;
/** @type {number} */
DiscountRate;
/** @type {string} */
Ean;
/** @type {string} */
ImageUri;
/** @type {string} */
Name;
/** @type {number} */
Quantity;
/** @type {string} */
Reference;
/** @type {number} */
TaxRate;
/** @type {number} */
TotalPriceExcludingTax;
/** @type {number} */
TotalPriceIncludingTax;
/** @type {number} */
TotalTaxAmount;
/** @type {number} */
CreditedAmount;
/** @type {ItemType} */
Type;
/** @type {number} */
UnitPrice;
/** @type {string} */
Uri;
}
export class Order {
/** @param {{Currency?:Currency,TotalFeeExcludingTax?:number,TotalFeeIncludingTax?:number,TotalPriceExcludingTax?:number,TotalPriceIncludingTax?:number,TotalTaxAmount?:number,TotalCreditedAmount?:number,Items?:IList<Item>}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {Currency} */
Currency;
/** @type {number} */
TotalFeeExcludingTax;
/** @type {number} */
TotalFeeIncludingTax;
/** @type {number} */
TotalPriceExcludingTax;
/** @type {number} */
TotalPriceIncludingTax;
/** @type {number} */
TotalTaxAmount;
/** @type {number} */
TotalCreditedAmount;
/** @type {IList<Item>} */
Items;
}
export class Merchant {
/** @param {{CheckoutUri?:string,ConfirmationUri?:string,NotificationUri?:string,ValidationUri?:string,TermsUri?:string,Reference?:string,PartnerId?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
CheckoutUri;
/** @type {string} */
ConfirmationUri;
/** @type {string} */
NotificationUri;
/** @type {string} */
ValidationUri;
/** @type {string} */
TermsUri;
/** @type {string} */
Reference;
/** @type {string} */
PartnerId;
}
/** @typedef {'White'|'Blue'|'Gray'|'GrayTextLogos'|'BlueTextLogos'|'WhiteTextLogos'|'WhiteNoFooter'|'GrayNoFooter'|'BlueNoFooter'} */
export var ColorScheme;
(function (ColorScheme) {
ColorScheme["White"] = "White"
ColorScheme["Blue"] = "Blue"
ColorScheme["Gray"] = "Gray"
ColorScheme["GrayTextLogos"] = "GrayTextLogos"
ColorScheme["BlueTextLogos"] = "BlueTextLogos"
ColorScheme["WhiteTextLogos"] = "WhiteTextLogos"
ColorScheme["WhiteNoFooter"] = "WhiteNoFooter"
ColorScheme["GrayNoFooter"] = "GrayNoFooter"
ColorScheme["BlueNoFooter"] = "BlueNoFooter"
})(ColorScheme || (ColorScheme = {}));
export class Gui {
/** @param {{ColorScheme?:ColorScheme,Locale?:string,RequestPhone?:boolean,PhoneOptional?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {ColorScheme} */
ColorScheme;
/** @type {string} */
Locale;
/** @type {boolean} */
RequestPhone;
/** @type {boolean} */
PhoneOptional;
}
export class History {
/** @param {{Created?:string,ReadyToPay?:string,ReadyToShip?:string,Shipped?:string,PaidToAccount?:string,Canceled?:string,Expired?:string,Denied?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {?string} */
Created;
/** @type {?string} */
ReadyToPay;
/** @type {?string} */
ReadyToShip;
/** @type {?string} */
Shipped;
/** @type {?string} */
PaidToAccount;
/** @type {?string} */
Canceled;
/** @type {?string} */
Expired;
/** @type {?string} */
Denied;
}
export class Payson2CheckoutResponse {
/** @param {{Id?:string,ExpirationTime?:string,Snippet?:string,Status?:Payson2CheckoutStatus,Customer?:Customer,Order?:Order,Merchant?:Merchant,Gui?:Gui,History?:History,PurchaseId?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
Id;
/** @type {?string} */
ExpirationTime;
/** @type {string} */
Snippet;
/** @type {Payson2CheckoutStatus} */
Status;
/** @type {Customer} */
Customer;
/** @type {Order} */
Order;
/** @type {Merchant} */
Merchant;
/** @type {Gui} */
Gui;
/** @type {History} */
History;
/** @type {?number} */
PurchaseId;
}
export class PaymentLog extends BaseModel {
/** @param {{CurrencyId?:string,CurrencyInfo?:Currency,CompanyId?:string,Id?:number,InternalReferenceId?:string,ArticleTypeId?:number,PaymentReferenceId?:string,PaymentProviderId?:number,OrderItemReferenceId?:string,Amount?:number,VAT?:number,AmountCredited?:number,Comments?:string,Created?:string,Updated?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CurrencyId;
/** @type {Currency} */
CurrencyInfo;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
InternalReferenceId;
/** @type {number} */
ArticleTypeId;
/** @type {string} */
PaymentReferenceId;
/** @type {?number} */
PaymentProviderId;
/** @type {string} */
OrderItemReferenceId;
/** @type {?number} */
Amount;
/** @type {?number} */
VAT;
/** @type {?number} */
AmountCredited;
/** @type {string} */
Comments;
/** @type {string} */
Created;
/** @type {string} */
Updated;
/** @type {?string} */
ModifiedDate;
}
export class PayableEntity extends BaseModel {
/** @param {{DbFactory?:IDbConnectionFactory,QvicklyPaymentManager?:IBokameraPaymentManager<InitCheckoutRequestBody, QvicklyCheckoutResponse, QvicklyPaymentResponse>,Payson2PaymentManager?:IBokameraPaymentManager<Payson2CheckoutResponse, Payson2CheckoutResponse, Payson2CheckoutResponse>,PaysonPaymentCheckout1?:IPaysonPaymentCheckout1,Logger?:ILogger<PayableEntity>,InternalReferenceId?:string,PaymentLog?:PaymentLog[],CompanyId?:string,PriceVat?:number,CurrencyId?:string,Customer?:Customer,Customers?:Customer[],Company?:Company}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {IDbConnectionFactory} */
DbFactory;
/** @type {IBokameraPaymentManager<InitCheckoutRequestBody, QvicklyCheckoutResponse, QvicklyPaymentResponse>} */
QvicklyPaymentManager;
/** @type {IBokameraPaymentManager<Payson2CheckoutResponse, Payson2CheckoutResponse, Payson2CheckoutResponse>} */
Payson2PaymentManager;
/** @type {IPaysonPaymentCheckout1} */
PaysonPaymentCheckout1;
/** @type {ILogger<PayableEntity>} */
Logger;
/** @type {string} */
InternalReferenceId;
/** @type {PaymentLog[]} */
PaymentLog;
/** @type {string} */
CompanyId;
/** @type {?number} */
PriceVat;
/** @type {string} */
CurrencyId;
/** @type {Customer} */
Customer;
/** @type {Customer[]} */
Customers;
/** @type {Company} */
Company;
}
export class RebateCodeStatus extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class ArticleServiceRelation extends BaseModel {
/** @param {{CompanyId?:string,Id?:number,ServiceId?:number,ArticleId?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {number} */
ServiceId;
/** @type {number} */
ArticleId;
}
/** @typedef {number} */
export var ArticleTypeEnum;
(function (ArticleTypeEnum) {
ArticleTypeEnum[ArticleTypeEnum["ServiceArticle"] = 1] = "ServiceArticle"
ArticleTypeEnum[ArticleTypeEnum["StandAloneArticle"] = 2] = "StandAloneArticle"
ArticleTypeEnum[ArticleTypeEnum["RebateCodePunchTicketArticle"] = 3] = "RebateCodePunchTicketArticle"
ArticleTypeEnum[ArticleTypeEnum["RebateCodeGiftCardArticle"] = 4] = "RebateCodeGiftCardArticle"
ArticleTypeEnum[ArticleTypeEnum["RebateCodeValueCardArticle"] = 5] = "RebateCodeValueCardArticle"
})(ArticleTypeEnum || (ArticleTypeEnum = {}));
export class Article extends BaseModel {
/** @param {{Company?:Company,CurrencyInfo?:Currency,ArticleServiceRelations?:ArticleServiceRelation[],ServiceIds?:number[],ArticleType?:ArticleTypeEnum,ArticleTypeName?:string,CompanyId?:string,Id?:number,Name?:string,ArticleTypeId?:number,Description?:string,ImageUrl?:string,Active?:boolean,Amount?:number,Price?:number,CurrencyId?:string,UpdatedDate?:string,CreatedDate?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {Company} */
Company;
/** @type {Currency} */
CurrencyInfo;
/** @type {ArticleServiceRelation[]} */
ArticleServiceRelations;
/** @type {number[]} */
ServiceIds;
/** @type {ArticleTypeEnum} */
ArticleType;
/** @type {string} */
ArticleTypeName;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {number} */
ArticleTypeId;
/** @type {string} */
Description;
/** @type {string} */
ImageUrl;
/** @type {boolean} */
Active;
/** @type {number} */
Amount;
/** @type {number} */
Price;
/** @type {string} */
CurrencyId;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {?string} */
ModifiedDate;
}
export class RebateCodeDayOfWeekRelation extends BaseModel {
/** @param {{DayOfWeek?:BokaMeraDayOfWeek,DayOfWeekId?:number,RebateCodeId?:number,CompanyId?:string,Id?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {BokaMeraDayOfWeek} */
DayOfWeek;
/** @type {number} */
DayOfWeekId;
/** @type {number} */
RebateCodeId;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
}
export class RebateCodeServiceRelation extends BaseModel {
/** @param {{CompanyId?:string,ServiceId?:number,RebateCodeId?:number,Id?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
ServiceId;
/** @type {number} */
RebateCodeId;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
}
export class RebateCodeBookingPriceRelation extends BaseModel {
/** @param {{CompanyId?:string,PriceId?:number,RebateCodeId?:number,Id?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
PriceId;
/** @type {number} */
RebateCodeId;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
}
export class RebateCodeCustomerRelation extends BaseModel {
/** @param {{CompanyId?:string,CustomerId?:string,RebateCodeId?:number,Id?:number,ModifiedDate?:string,RebateCodeEmailSentToCustomer?:boolean,MessageToReceiver?:string,Buyer?:boolean}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {string} */
CustomerId;
/** @type {number} */
RebateCodeId;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
RebateCodeEmailSentToCustomer;
/** @type {string} */
MessageToReceiver;
/** @type {boolean} */
Buyer;
}
export class DaysOfWeek extends BaseModel {
/** @param {{DayOfWeek?:string,DayOfWeekTranslation?:string,DayOfWeekActive?:boolean,DayOfWeekSortOrder?:number,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
DayOfWeek;
/** @type {string} */
DayOfWeekTranslation;
/** @type {?boolean} */
DayOfWeekActive;
/** @type {?number} */
DayOfWeekSortOrder;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class CalendarExport extends BaseModel {
/** @param {{CompanyId?:string,BookingId?:number,ExceptionId?:number,CalendarSync?:boolean,CalendarId?:string,IsExceptionDeleted?:boolean,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
BookingId;
/** @type {number} */
ExceptionId;
/** @type {?boolean} */
CalendarSync;
/** @type {string} */
CalendarId;
/** @type {?boolean} */
IsExceptionDeleted;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class BookingLogEventType extends BaseModel {
/** @param {{Name?:string,Description?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class BookingLog extends BaseModel {
/** @param {{EventTypeId?:number,EventType?:BookingLogEventType,CompanyId?:string,BookingId?:number,Id?:number,Comments?:string,UserId?:string,Created?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
EventTypeId;
/** @type {BookingLogEventType} */
EventType;
/** @type {string} */
CompanyId;
/** @type {number} */
BookingId;
/** @type {number} */
Id;
/** @type {string} */
Comments;
/** @type {string} */
UserId;
/** @type {string} */
Created;
/** @type {?string} */
ModifiedDate;
}
export class PaymentDetails extends BaseModel {
/** @param {{QvicklyCheckoutSerialized?:QvicklyCheckoutResponse,Payson2CheckoutSerialized?:Payson2CheckoutResponse,CompanyId?:string,InternalReferenceId?:string,ArticleTypeId?:number,ExternalResponseData?:string,ExternalResponseReference?:string,PaymentProviderId?:number,CreatedDate?:string,UpdatedDate?:string,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {QvicklyCheckoutResponse} */
QvicklyCheckoutSerialized;
/** @type {Payson2CheckoutResponse} */
Payson2CheckoutSerialized;
/** @type {string} */
CompanyId;
/** @type {string} */
InternalReferenceId;
/** @type {number} */
ArticleTypeId;
/** @type {string} */
ExternalResponseData;
/** @type {string} */
ExternalResponseReference;
/** @type {number} */
PaymentProviderId;
/** @type {string} */
CreatedDate;
/** @type {string} */
UpdatedDate;
/** @type {?string} */
ModifiedDate;
}
export class BookingPrice extends BaseModel {
/** @param {{CurrencyId?:string,PriceId?:number,CurrencyInfo?:Currency,PriceText?:string,AppliedCodes?:AppliedRebateCodes[],IsRebate?:boolean,CompanyId?:string,BookingId?:number,Quantity?:number,Price?:number,VAT?:number,Category?:string,Updated?:string,Created?:string,Invoiced?:boolean,OccupiesSpot?:boolean,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CurrencyId;
/** @type {?number} */
PriceId;
/** @type {Currency} */
CurrencyInfo;
/** @type {string} */
PriceText;
/** @type {AppliedRebateCodes[]} */
AppliedCodes;
/** @type {boolean} */
IsRebate;
/** @type {string} */
CompanyId;
/** @type {number} */
BookingId;
/** @type {number} */
Quantity;
/** @type {?number} */
Price;
/** @type {?number} */
VAT;
/** @type {string} */
Category;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {boolean} */
Invoiced;
/** @type {boolean} */
OccupiesSpot;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class BookingStatus extends BaseModel {
/** @param {{Name?:string,Description?:string,Color?:string,Icon?:string,ModifiedDate?:string,Id?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Color;
/** @type {string} */
Icon;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
}
export class BookedResource {
/** @param {{Id?:number,Name?:string,Color?:string,ImageUrl?:string,Email?:string,MobilePhone?:string,AccessGroup?:string,EmailNotification?:boolean,SMSNotification?:boolean,EmailReminder?:boolean,SMSReminder?:boolean}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {string} */
Color;
/** @type {string} */
ImageUrl;
/** @type {string} */
Email;
/** @type {string} */
MobilePhone;
/** @type {string} */
AccessGroup;
/** @type {boolean} */
EmailNotification;
/** @type {boolean} */
SMSNotification;
/** @type {boolean} */
EmailReminder;
/** @type {boolean} */
SMSReminder;
}
export class BookedResourceType {
/** @param {{Id?:number,Name?:string,Resources?:BookedResource[]}} [init] */
constructor(init) { Object.assign(this, init) }
/**
* @type {number}
* @description The resource type id */
Id;
/**
* @type {string}
* @description The resource type name */
Name;
/**
* @type {BookedResource[]}
* @description The resources inside resource type */
Resources;
}
export class Booking extends PayableEntity {
/** @param {{Service?:Service,CalendarExport?:CalendarExport,Log?:BookingLog[],CheckoutLogs?:PaymentDetails[],Prices?:BookingPrice[],Status?:BookingStatusEnum,IsReserved?:boolean,StatusName?:string,CurrencyInfo?:Currency,BookingStatus?:BookingStatus,TotalPrice?:number,TotalSpots?:number,Resources?:IList<Resource>,ExternalReferences?:IList<ExternalReference>,BookedResources?:IList<BookedResourceType>,CustomFieldsConfig?:IList<CustomFieldConfig>,CustomFieldsData?:IList<CustomFieldDataResponse>,DeterministicId?:string,Active?:boolean,LastTimeToUnBook?:string,PriceMappings?:PriceMapping[],InternalReferenceId?:string,UpdatedDate?:string,CreatedDate?:string,Id?:number,CustomerId?:string,ServiceId?:number,StatusId?:number,UnbookedOn?:string,UnbookedComments?:string,BookedComments?:string,BookedBy?:string,UnBookedBy?:string,SendSmsReminder?:boolean,SendEmailReminder?:boolean,SendSmsConfirmation?:boolean,RebateCode?:string,Comments?:string,IpAddress?:string,NumberOfBookedSpots?:number,CommentsToCustomer?:string,PaymentExpiration?:string,SendEmailConfirmation?:boolean,CancellationCode?:string,ModifiedDate?:string,RatingCode?:string,TextField1?:string,TextField2?:string,TextField3?:string,TextField4?:string,TextField5?:string,TextField6?:string,TextField7?:string,TextField8?:string,TextField9?:string,TextField10?:string,TextField11?:string,TextField12?:string,TextField13?:string,TextField14?:string,TextField15?:string,TextField16?:string,TextField17?:string,TextField18?:string,TextField19?:string,TextField20?:string,From?:string,To?:string,DbFactory?:IDbConnectionFactory,QvicklyPaymentManager?:IBokameraPaymentManager<InitCheckoutRequestBody, QvicklyCheckoutResponse, QvicklyPaymentResponse>,Payson2PaymentManager?:IBokameraPaymentManager<Payson2CheckoutResponse, Payson2CheckoutResponse, Payson2CheckoutResponse>,PaysonPaymentCheckout1?:IPaysonPaymentCheckout1,Logger?:ILogger<PayableEntity>,InternalReferenceId?:string,PaymentLog?:PaymentLog[],CompanyId?:string,PriceVat?:number,CurrencyId?:string,Customer?:Customer,Customers?:Customer[],Company?:Company}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {Service} */
Service;
/** @type {CalendarExport} */
CalendarExport;
/** @type {BookingLog[]} */
Log;
/** @type {PaymentDetails[]} */
CheckoutLogs;
/** @type {BookingPrice[]} */
Prices;
/** @type {BookingStatusEnum} */
Status;
/** @type {boolean} */
IsReserved;
/** @type {string} */
StatusName;
/** @type {Currency} */
CurrencyInfo;
/** @type {BookingStatus} */
BookingStatus;
/** @type {?number} */
TotalPrice;
/** @type {?number} */
TotalSpots;
/** @type {IList<Resource>} */
Resources;
/** @type {IList<ExternalReference>} */
ExternalReferences;
/** @type {IList<BookedResourceType>} */
BookedResources;
/** @type {IList<CustomFieldConfig>} */
CustomFieldsConfig;
/** @type {IList<CustomFieldDataResponse>} */
CustomFieldsData;
/** @type {string} */
DeterministicId;
/** @type {boolean} */
Active;
/** @type {?string} */
LastTimeToUnBook;
/** @type {PriceMapping[]} */
PriceMappings;
/** @type {string} */
InternalReferenceId;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {number} */
Id;
/** @type {string} */
CustomerId;
/** @type {number} */
ServiceId;
/** @type {number} */
StatusId;
/** @type {?string} */
UnbookedOn;
/** @type {string} */
UnbookedComments;
/** @type {string} */
BookedComments;
/** @type {string} */
BookedBy;
/** @type {string} */
UnBookedBy;
/** @type {boolean} */
SendSmsReminder;
/** @type {boolean} */
SendEmailReminder;
/** @type {boolean} */
SendSmsConfirmation;
/** @type {string} */
RebateCode;
/** @type {string} */
Comments;
/** @type {string} */
IpAddress;
/** @type {number} */
NumberOfBookedSpots;
/** @type {string} */
CommentsToCustomer;
/** @type {?string} */
PaymentExpiration;
/** @type {boolean} */
SendEmailConfirmation;
/** @type {string} */
CancellationCode;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
RatingCode;
/** @type {string} */
TextField1;
/** @type {string} */
TextField2;
/** @type {string} */
TextField3;
/** @type {string} */
TextField4;
/** @type {string} */
TextField5;
/** @type {string} */
TextField6;
/** @type {string} */
TextField7;
/** @type {string} */
TextField8;
/** @type {string} */
TextField9;
/** @type {string} */
TextField10;
/** @type {string} */
TextField11;
/** @type {string} */
TextField12;
/** @type {string} */
TextField13;
/** @type {string} */
TextField14;
/** @type {string} */
TextField15;
/** @type {string} */
TextField16;
/** @type {string} */
TextField17;
/** @type {string} */
TextField18;
/** @type {string} */
TextField19;
/** @type {string} */
TextField20;
/** @type {string} */
From;
/** @type {string} */
To;
}
export class RebateCodeTransaction extends BaseModel {
/** @param {{Booking?:Booking,RebateCode?:RebateCode,Customer?:Customer,Id?:number,CompanyId?:string,Note?:string,RebateCodeId?:number,Amount?:number,Usage?:number,BookingId?:number,UpdatedDate?:string,CreatedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {Booking} */
Booking;
/** @type {RebateCode} */
RebateCode;
/** @type {Customer} */
Customer;
/** @type {number} */
Id;
/** @type {string} */
CompanyId;
/** @type {string} */
Note;
/** @type {number} */
RebateCodeId;
/** @type {number} */
Amount;
/** @type {number} */
Usage;
/** @type {?number} */
BookingId;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
}
export class RebateCode extends PayableEntity {
/** @param {{RebateCodeTypeId?:number,RebateCodeTypeInfo?:RebateCodeType,RebateCodeStatusId?:number,RebateCodeStatusInfo?:RebateCodeStatus,Article?:Article,Services?:Service[],RebateCodeDayOfWeekRelation?:RebateCodeDayOfWeekRelation[],RebateCodeServiceRelation?:RebateCodeServiceRelation[],RebateCodeBookingPriceRelation?:RebateCodeBookingPriceRelation[],RebateCodeCustomerRelation?:RebateCodeCustomerRelation[],ServicesNames?:string,DaysOfWeek?:DaysOfWeek[],RebateCodeStatus?:RebateCodeStatus,RebateCodeType?:RebateCodeType,Transactions?:RebateCodeTransaction[],RemainingAmount?:number,RemainingUsage?:number,CurrentNumberOfUsesPerCustomer?:number,IsSpecificByDayOfWeek?:boolean,Active?:boolean,ActiveByStatus?:boolean,RebateCodeCurrencySign?:string,CurrencyInfo?:Currency,PaymentReceived?:boolean,InternalReferenceId?:string,ValidFrom?:string,ValidTo?:string,RebateCodeSign?:string,RebateCodeValue?:number,MaxNumberOfUses?:number,MaxNumberOfUsesPerCustomer?:number,NumberOfUsesUsed?:number,PersonalNote?:string,CreatedBy?:string,Created?:string,UpdatedBy?:string,UpdatedDate?:string,FromTime?:string,ToTime?:string,ModifiedDate?:string,Id?:number,ArticleId?:number,DbFactory?:IDbConnectionFactory,QvicklyPaymentManager?:IBokameraPaymentManager<InitCheckoutRequestBody, QvicklyCheckoutResponse, QvicklyPaymentResponse>,Payson2PaymentManager?:IBokameraPaymentManager<Payson2CheckoutResponse, Payson2CheckoutResponse, Payson2CheckoutResponse>,PaysonPaymentCheckout1?:IPaysonPaymentCheckout1,Logger?:ILogger<PayableEntity>,InternalReferenceId?:string,PaymentLog?:PaymentLog[],CompanyId?:string,PriceVat?:number,CurrencyId?:string,Customer?:Customer,Customers?:Customer[],Company?:Company}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
RebateCodeTypeId;
/** @type {RebateCodeType} */
RebateCodeTypeInfo;
/** @type {number} */
RebateCodeStatusId;
/** @type {RebateCodeStatus} */
RebateCodeStatusInfo;
/** @type {Article} */
Article;
/** @type {Service[]} */
Services;
/** @type {RebateCodeDayOfWeekRelation[]} */
RebateCodeDayOfWeekRelation;
/** @type {RebateCodeServiceRelation[]} */
RebateCodeServiceRelation;
/** @type {RebateCodeBookingPriceRelation[]} */
RebateCodeBookingPriceRelation;
/** @type {RebateCodeCustomerRelation[]} */
RebateCodeCustomerRelation;
/** @type {string} */
ServicesNames;
/** @type {DaysOfWeek[]} */
DaysOfWeek;
/** @type {RebateCodeStatus} */
RebateCodeStatus;
/** @type {RebateCodeType} */
RebateCodeType;
/** @type {RebateCodeTransaction[]} */
Transactions;
/** @type {?number} */
RemainingAmount;
/** @type {?number} */
RemainingUsage;
/** @type {number} */
CurrentNumberOfUsesPerCustomer;
/** @type {boolean} */
IsSpecificByDayOfWeek;
/** @type {boolean} */
Active;
/** @type {boolean} */
ActiveByStatus;
/** @type {string} */
RebateCodeCurrencySign;
/** @type {Currency} */
CurrencyInfo;
/** @type {boolean} */
PaymentReceived;
/** @type {string} */
InternalReferenceId;
/** @type {string} */
ValidFrom;
/** @type {string} */
ValidTo;
/** @type {string} */
RebateCodeSign;
/** @type {number} */
RebateCodeValue;
/** @type {number} */
MaxNumberOfUses;
/** @type {number} */
MaxNumberOfUsesPerCustomer;
/** @type {number} */
NumberOfUsesUsed;
/** @type {string} */
PersonalNote;
/** @type {string} */
CreatedBy;
/** @type {string} */
Created;
/** @type {string} */
UpdatedBy;
/** @type {string} */
UpdatedDate;
/** @type {string} */
FromTime;
/** @type {string} */
ToTime;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
Id;
/** @type {?number} */
ArticleId;
}
export class ServicePrice extends BaseModel {
/** @param {{CurrencyId?:string,CurrencyInfo?:Currency,Service?:Service,PriceMappings?:PriceMapping[],isTimeSpecific?:boolean,isDaysOfWeekSpecific?:boolean,DayOfWeeks?:ServicePriceDayOfWeekRelation[],PriceBeforeRebate?:number,RebateCodesApplied?:RebateCode[],PriceText?:string,OverlappingPrices?:ServicePrice[],CompanyId?:string,Id?:number,ServiceId?:number,Price?:number,Updated?:string,Created?:string,FromTime?:string,ToTime?:string,VAT?:number,Category?:string,ModifiedDate?:string,From?:string,To?:string,CalculationTypeId?:number}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CurrencyId;
/** @type {Currency} */
CurrencyInfo;
/** @type {Service} */
Service;
/** @type {PriceMapping[]} */
PriceMappings;
/** @type {boolean} */
isTimeSpecific;
/** @type {boolean} */
isDaysOfWeekSpecific;
/** @type {ServicePriceDayOfWeekRelation[]} */
DayOfWeeks;
/** @type {?number} */
PriceBeforeRebate;
/** @type {RebateCode[]} */
RebateCodesApplied;
/** @type {string} */
PriceText;
/** @type {ServicePrice[]} */
OverlappingPrices;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {number} */
ServiceId;
/** @type {?number} */
Price;
/** @type {string} */
Updated;
/** @type {string} */
Created;
/** @type {string} */
FromTime;
/** @type {string} */
ToTime;
/** @type {number} */
VAT;
/** @type {string} */
Category;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
From;
/** @type {string} */
To;
/** @type {number} */
CalculationTypeId;
}
export class Service extends BaseModel {
/** @param {{ResourceTypes?:ResourceType[],Resources?:Resource[],TotalPrice?:TotalPriceInformation,Prices?:ServicePrice[],BookingStatusOptions?:BookingStatusOptions[],IsGroupBooking?:boolean,IsMultipleResource?:boolean,Settings?:BookingSettings,PaymentSetting?:PaymentSetting,BookingCustomFieldsConfig?:IList<CustomFieldConfig>,CustomerCustomFieldsConfig?:IList<CustomFieldConfig>,CustomFieldsConfig?:IList<CustomFieldConfig>,CustomFieldsData?:IList<CustomFieldDataResponse>,Schedules?:IList<ISchedule>,CustomerActiveBookings?:IList<Booking>,ScheduleType?:ScheduleType,LastTimeToUnbookThreshold?:string,LastTimeToBookThreshold?:string,RatingScore?:AverageRatingScore,Ratings?:Rating[],CompanyId?:string,Id?:number,Name?:string,Description?:string,Group?:string,Active?:boolean,SortOrder?:number,PauseAfterBooking?:number,UnbookBeforeDays?:number,UnbookBeforeHours?:number,UnbookBeforeMinutes?:number,BookBeforeDays?:number,BookBeforeHours?:number,BookBeforeMinutes?:number,Duration?:number,DurationTypeId?:number,MinDuration?:number,MaxDuration?:number,DurationInterval?:number,TotalSpots?:number,ImageUrl?:string,ScheduleTypeId?:number,UpdatedDate?:string,CreatedDate?:string,OnlyVisibleByAdmin?:boolean,MinNumberOfSpotsPerBooking?:number,MaxNumberOfSpotsPerBooking?:number,MinNumberOfResourcesToBook?:number,MaxNumberOfResourcesToBook?:number,IsPaymentEnabled?:boolean,MaxPaymentTime?:number,LockSpotsToBooking?:boolean,EnableBookingQueue?:boolean,ModifiedDate?:string,BookingStatusId?:number,EnableCodeLockSync?:boolean,EnableCustomerManualPayment?:boolean,PriceViewTypeId?:number,TextField1?:string,TextField2?:string,TextField3?:string,TextField4?:string,TextField5?:string,TextField6?:string,TextField7?:string,TextField8?:string,TextField9?:string,TextField10?:string,TextField11?:string,TextField12?:string,TextField13?:string,TextField14?:string,TextField15?:string,TextField16?:string,TextField17?:string,TextField18?:string,TextField19?:string,TextField20?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {ResourceType[]} */
ResourceTypes;
/** @type {Resource[]} */
Resources;
/** @type {TotalPriceInformation} */
TotalPrice;
/** @type {ServicePrice[]} */
Prices;
/** @type {BookingStatusOptions[]} */
BookingStatusOptions;
/** @type {boolean} */
IsGroupBooking;
/** @type {boolean} */
IsMultipleResource;
/** @type {BookingSettings} */
Settings;
/** @type {PaymentSetting} */
PaymentSetting;
/** @type {IList<CustomFieldConfig>} */
BookingCustomFieldsConfig;
/** @type {IList<CustomFieldConfig>} */
CustomerCustomFieldsConfig;
/** @type {IList<CustomFieldConfig>} */
CustomFieldsConfig;
/** @type {IList<CustomFieldDataResponse>} */
CustomFieldsData;
/** @type {IList<ISchedule>} */
Schedules;
/** @type {IList<Booking>} */
CustomerActiveBookings;
/** @type {ScheduleType} */
ScheduleType;
/** @type {string} */
LastTimeToUnbookThreshold;
/** @type {string} */
LastTimeToBookThreshold;
/** @type {AverageRatingScore} */
RatingScore;
/** @type {Rating[]} */
Ratings;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Group;
/** @type {boolean} */
Active;
/** @type {number} */
SortOrder;
/** @type {number} */
PauseAfterBooking;
/** @type {number} */
UnbookBeforeDays;
/** @type {number} */
UnbookBeforeHours;
/** @type {number} */
UnbookBeforeMinutes;
/** @type {number} */
BookBeforeDays;
/** @type {number} */
BookBeforeHours;
/** @type {number} */
BookBeforeMinutes;
/** @type {?number} */
Duration;
/** @type {number} */
DurationTypeId;
/** @type {?number} */
MinDuration;
/** @type {?number} */
MaxDuration;
/** @type {?number} */
DurationInterval;
/** @type {?number} */
TotalSpots;
/** @type {string} */
ImageUrl;
/** @type {number} */
ScheduleTypeId;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {boolean} */
OnlyVisibleByAdmin;
/** @type {number} */
MinNumberOfSpotsPerBooking;
/** @type {number} */
MaxNumberOfSpotsPerBooking;
/** @type {number} */
MinNumberOfResourcesToBook;
/** @type {number} */
MaxNumberOfResourcesToBook;
/** @type {boolean} */
IsPaymentEnabled;
/** @type {number} */
MaxPaymentTime;
/** @type {boolean} */
LockSpotsToBooking;
/** @type {boolean} */
EnableBookingQueue;
/** @type {?string} */
ModifiedDate;
/** @type {number} */
BookingStatusId;
/** @type {boolean} */
EnableCodeLockSync;
/** @type {boolean} */
EnableCustomerManualPayment;
/** @type {?number} */
PriceViewTypeId;
/** @type {string} */
TextField1;
/** @type {string} */
TextField2;
/** @type {string} */
TextField3;
/** @type {string} */
TextField4;
/** @type {string} */
TextField5;
/** @type {string} */
TextField6;
/** @type {string} */
TextField7;
/** @type {string} */
TextField8;
/** @type {string} */
TextField9;
/** @type {string} */
TextField10;
/** @type {string} */
TextField11;
/** @type {string} */
TextField12;
/** @type {string} */
TextField13;
/** @type {string} */
TextField14;
/** @type {string} */
TextField15;
/** @type {string} */
TextField16;
/** @type {string} */
TextField17;
/** @type {string} */
TextField18;
/** @type {string} */
TextField19;
/** @type {string} */
TextField20;
}
export class CustomFieldServiceRelation extends BaseModel {
/** @param {{CompanyId?:string,Id?:number,CustomFieldConfigId?:number,ServiceId?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {number} */
CustomFieldConfigId;
/** @type {number} */
ServiceId;
/** @type {?string} */
ModifiedDate;
}
export class CustomFieldConfig extends BaseModel {
/** @param {{Values?:CustomFieldValue[],CustomField?:CustomField,RegEx?:RegEx,Services?:Service[],CustomFieldServiceRelation?:CustomFieldServiceRelation[],CompanyId?:string,Id?:number,GroupId?:number,FieldId?:number,IconId?:number,RegExId?:number,Name?:string,Description?:string,Datatype?:string,MaxLength?:number,IsPublic?:boolean,IsHidden?:boolean,IsMandatory?:boolean,DefaultValue?:string,RegExErrorMessage?:string,MandatoryErrorMessage?:string,Width?:number,MultipleLineText?:boolean,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {CustomFieldValue[]} */
Values;
/** @type {CustomField} */
CustomField;
/** @type {RegEx} */
RegEx;
/** @type {Service[]} */
Services;
/** @type {CustomFieldServiceRelation[]} */
CustomFieldServiceRelation;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {?number} */
GroupId;
/** @type {number} */
FieldId;
/** @type {number} */
IconId;
/** @type {?number} */
RegExId;
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
Datatype;
/** @type {number} */
MaxLength;
/** @type {boolean} */
IsPublic;
/** @type {boolean} */
IsHidden;
/** @type {boolean} */
IsMandatory;
/** @type {string} */
DefaultValue;
/** @type {string} */
RegExErrorMessage;
/** @type {string} */
MandatoryErrorMessage;
/** @type {?number} */
Width;
/** @type {boolean} */
MultipleLineText;
/** @type {?string} */
ModifiedDate;
}
export class Resource extends BaseModel {
/** @param {{Priority?:number,Schedules?:IList<ISchedule>,Exceptions?:IList<ITimeException>,Bookings?:IList<IBookedTime>,CustomFieldsConfig?:IList<CustomFieldConfig>,CustomFieldsData?:IList<CustomFieldDataResponse>,CompanyId?:string,Id?:number,Name?:string,Active?:boolean,Description?:string,ImageUrl?:string,UpdatedDate?:string,CreatedDate?:string,Color?:string,Email?:string,MobilePhone?:string,EmailNotification?:boolean,SMSNotification?:boolean,SendSMSReminder?:boolean,SendEmailReminder?:boolean,ModifiedDate?:string,AccessGroup?:string,TextField1?:string,TextField2?:string,TextField3?:string,TextField4?:string,TextField5?:string,TextField6?:string,TextField7?:string,TextField8?:string,TextField9?:string,TextField10?:string,TextField11?:string,TextField12?:string,TextField13?:string,TextField14?:string,TextField15?:string,TextField16?:string,TextField17?:string,TextField18?:string,TextField19?:string,TextField20?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {number} */
Priority;
/** @type {IList<ISchedule>} */
Schedules;
/** @type {IList<ITimeException>} */
Exceptions;
/** @type {IList<IBookedTime>} */
Bookings;
/** @type {IList<CustomFieldConfig>} */
CustomFieldsConfig;
/** @type {IList<CustomFieldDataResponse>} */
CustomFieldsData;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {boolean} */
Active;
/** @type {string} */
Description;
/** @type {string} */
ImageUrl;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {string} */
Color;
/** @type {string} */
Email;
/** @type {string} */
MobilePhone;
/** @type {?boolean} */
EmailNotification;
/** @type {?boolean} */
SMSNotification;
/** @type {boolean} */
SendSMSReminder;
/** @type {boolean} */
SendEmailReminder;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
AccessGroup;
/** @type {string} */
TextField1;
/** @type {string} */
TextField2;
/** @type {string} */
TextField3;
/** @type {string} */
TextField4;
/** @type {string} */
TextField5;
/** @type {string} */
TextField6;
/** @type {string} */
TextField7;
/** @type {string} */
TextField8;
/** @type {string} */
TextField9;
/** @type {string} */
TextField10;
/** @type {string} */
TextField11;
/** @type {string} */
TextField12;
/** @type {string} */
TextField13;
/** @type {string} */
TextField14;
/** @type {string} */
TextField15;
/** @type {string} */
TextField16;
/** @type {string} */
TextField17;
/** @type {string} */
TextField18;
/** @type {string} */
TextField19;
/** @type {string} */
TextField20;
}
export class DateScheduleResourceRelation extends BaseModel {
/** @param {{CompanyId?:string,DateScheduleId?:number,ResourceId?:number,Id?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
DateScheduleId;
/** @type {number} */
ResourceId;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
}
export class ServiceDateScheduleRelation extends BaseModel {
/** @param {{CompanyId?:string,ServiceId?:number,DateScheduleId?:number,Id?:number,ModifiedDate?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
CompanyId;
/** @type {number} */
ServiceId;
/** @type {number} */
DateScheduleId;
/** @type {number} */
Id;
/** @type {?string} */
ModifiedDate;
}
export class DateSchedule extends BaseModel {
/** @param {{Dates?:IList<DateScheduleDate>,Type?:ScheduleType,Resources?:IList<Resource>,Services?:IList<Service>,IsResourceSpecific?:boolean,DateScheduleDate?:DateScheduleDate[],DateScheduleResourceRelation?:DateScheduleResourceRelation[],ServiceDateScheduleRelation?:ServiceDateScheduleRelation[],CompanyId?:string,Id?:number,Name?:string,Description?:string,UpdatedDate?:string,CreatedDate?:string,ModifiedDate?:string,Active?:boolean}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {IList<DateScheduleDate>} */
Dates;
/** @type {ScheduleType} */
Type;
/** @type {IList<Resource>} */
Resources;
/** @type {IList<Service>} */
Services;
/** @type {boolean} */
IsResourceSpecific;
/** @type {DateScheduleDate[]} */
DateScheduleDate;
/** @type {DateScheduleResourceRelation[]} */
DateScheduleResourceRelation;
/** @type {ServiceDateScheduleRelation[]} */
ServiceDateScheduleRelation;
/** @type {string} */
CompanyId;
/** @type {number} */
Id;
/** @type {string} */
Name;
/** @type {string} */
Description;
/** @type {string} */
UpdatedDate;
/** @type {string} */
CreatedDate;
/** @type {?string} */
ModifiedDate;
/** @type {boolean} */
Active;
}
export class DateScheduleQuery extends QueryDb {
/** @param {{CompanyId?:string,ValidFrom?:string,ValidTo?:string,IncludeScheduleDates?:boolean,IncludeConnectedResources?:boolean,IncludeConnectedServices?:boolean,Active?:boolean,Skip?:number,Take?:number,OrderBy?:string,OrderByDesc?:string,Include?:string,Fields?:string,Meta?:{ [index: string]: string; }}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/**
* @type {?string}
* @description Enter the company you want to see news for, if blank and you are an admin, your company id will be used */
CompanyId;
/**
* @type {?string}
* @description Enter the From Date you want to see news from, only allowed if admin */
ValidFrom;
/**
* @type {?string}
* @description Enter the To Date you want to see news to, only allowed if admin */
ValidTo;
/**
* @type {boolean}
* @description If you want to include the connected dates for the schedule */
IncludeScheduleDates;
/**
* @type {boolean}
* @description If you want to include the connected resources for the schedule */
IncludeConnectedResources;
/**
* @type {boolean}
* @description If you want to include the connected services for the schedule */
IncludeConnectedServices;
/**
* @type {?boolean}
* @description Use this parameter if you want to only show active news */
Active;
}
export class Currency extends BaseModel {
/** @param {{Name?:string,CurrencySign?:string,Active?:boolean,ModifiedDate?:string,Id?:string}} [init] */
constructor(init) { super(init); Object.assign(this, init) }
/** @type {string} */
Name;
/** @type {string} */
CurrencySign;
/** @type {boolean} */
Active;
/** @type {?string} */
ModifiedDate;
/** @type {string} */
Id;
}
export class QvicklyArticle {
/** @param {{artnr?:string,title?:string,quantity?:number,aprice?:number,tax?:number,discount?:number,withouttax?:number,taxrate?:number}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
artnr;
/** @type {string} */
title;
/** @type {number} */
quantity;
/** @type {number} */
aprice;
/** @type {number} */
tax;
/** @type {number} */
discount;
/** @type {number} */
withouttax;
/** @type {number} */
taxrate;
}
export class Customer {
/** @param {{City?:string,CountryCode?:string,IdentityNumber?:string,Email?:string,FirstName?:string,LastName?:string,Phone?:string,PostalCode?:string,Street?:string,Reference?:string,Type?:CustomerType}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {string} */
City;
/** @type {string} */
CountryCode;
/** @type {string} */
IdentityNumber;
/** @type {string} */
Email;
/** @type {string} */
FirstName;
/** @type {string} */
LastName;
/** @type {string} */
Phone;
/** @type {string} */
PostalCode;
/** @type {string} */
Street;
/** @type {string} */
Reference;
/** @type {CustomerType} */
Type;
}
export class AccessKeyTypeResponse {
/** @param {{Id?:number,KeyType?:string,Description?:string}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Id;
/** @type {string} */
KeyType;
/** @type {string} */
Description;
}
/** @typedef T {any} */
export class QueryResponse {
/** @param {{Offset?:number,Total?:number,Results?:T[],Meta?:{ [index: string]: string; },ResponseStatus?:ResponseStatus}} [init] */
constructor(init) { Object.assign(this, init) }
/** @type {number} */
Offset;
/** @type {number} */
Total;
/** @type {T[]} */
Results;
/** @type {{ [index: string]: string; }} */
Meta;
/** @type {ResponseStatus} */
ResponseStatus;
}
JavaScript DateScheduleQuery DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /schedules/date HTTP/1.1 Host: api.bokamera.se Accept: text/jsonl
HTTP/1.1 200 OK Content-Type: text/jsonl Content-Length: length {"Offset":0,"Total":0,"Results":[{"Id":0,"Name":"String","Description":"String","Active":false,"IsResourceSpecific":false,"ScheduleDates":[{"Id":0,"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}],"Resources":[{"Id":0,"Name":"String"}],"Services":[{"Id":0,"Name":"String"}],"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}],"Meta":{"String":"String"},"ResponseStatus":{"ErrorCode":"String","Message":"String","StackTrace":"String","Errors":[{"ErrorCode":"String","FieldName":"String","Message":"String","Meta":{"String":"String"}}],"Meta":{"String":"String"}}}