@bisondesk/website-commons-sdk 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/constants.d.ts +3 -0
- package/lib/constants.d.ts.map +1 -0
- package/lib/constants.js +3 -0
- package/lib/constants.js.map +1 -0
- package/lib/definitions.d.ts +2 -0
- package/lib/definitions.d.ts.map +1 -0
- package/lib/definitions.js +2 -0
- package/lib/definitions.js.map +1 -0
- package/lib/types/definitions.d.ts +39 -0
- package/lib/types/definitions.d.ts.map +1 -0
- package/lib/types/definitions.js +2 -0
- package/lib/types/definitions.js.map +1 -0
- package/lib/types/fields.d.ts +22 -0
- package/lib/types/fields.d.ts.map +1 -0
- package/lib/types/fields.js +8 -0
- package/lib/types/fields.js.map +1 -0
- package/lib/types/messages.d.ts +39 -0
- package/lib/types/messages.d.ts.map +1 -0
- package/lib/types/messages.js +2 -0
- package/lib/types/messages.js.map +1 -0
- package/lib/types/search.d.ts +136 -0
- package/lib/types/search.d.ts.map +1 -0
- package/lib/types/search.js +32 -0
- package/lib/types/search.js.map +1 -0
- package/lib/types/vehicle.d.ts +288 -0
- package/lib/types/vehicle.d.ts.map +1 -0
- package/lib/types/vehicle.js +30 -0
- package/lib/types/vehicle.js.map +1 -0
- package/package.json +36 -0
- package/src/constants.ts +6 -0
- package/src/definitions.ts +0 -0
- package/src/types/definitions.ts +38 -0
- package/src/types/fields.ts +73 -0
- package/src/types/messages.ts +44 -0
- package/src/types/search.ts +182 -0
- package/src/types/vehicle.ts +289 -0
- package/tsconfig.json +15 -0
- package/tsconfig.tsbuildinfo +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"/","sources":["constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,mBAAmB,+CAAgD,CAAC;AAKjF,eAAO,MAAM,gBAAgB,cAAc,CAAC"}
|
package/lib/constants.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"/","sources":["constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC;AAKjF,MAAM,CAAC,MAAM,gBAAgB,GAAG,WAAW,CAAC","sourcesContent":["export const SUPPORTED_LANGUAGES = ['en', 'es', 'fr', 'nl', 'pl', 'ro'] as const;\n\n//\n// Headers\n//\nexport const TENANT_ID_HEADER = 'tenant-id';\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"/","sources":["definitions.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"/","sources":["definitions.ts"],"names":[],"mappings":"","sourcesContent":[""]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { SUPPORTED_LANGUAGES } from '../constants.js';
|
|
2
|
+
import { FieldTypes } from './fields.js';
|
|
3
|
+
import { Aggregation } from './search.js';
|
|
4
|
+
export type EsDefinitionField = {
|
|
5
|
+
esMapping: unknown;
|
|
6
|
+
sortKey?: string;
|
|
7
|
+
};
|
|
8
|
+
export type EsDefinition = {
|
|
9
|
+
name: string;
|
|
10
|
+
nestedEsPaths: string[];
|
|
11
|
+
fields: {
|
|
12
|
+
[fieldId: string]: EsDefinitionField;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
export type EsFullTextSearchDefinition = ((lang: string) => string)[];
|
|
16
|
+
export type EsAggregationsDefinition = Aggregation[];
|
|
17
|
+
export type PublicSearchDefinition = {
|
|
18
|
+
aggs: Aggregation[];
|
|
19
|
+
};
|
|
20
|
+
export type SearchField = {
|
|
21
|
+
id: string;
|
|
22
|
+
titles: {
|
|
23
|
+
[lang: string]: string;
|
|
24
|
+
} & ({
|
|
25
|
+
[local in (typeof SUPPORTED_LANGUAGES)[number]]: string;
|
|
26
|
+
} | {
|
|
27
|
+
key: string;
|
|
28
|
+
});
|
|
29
|
+
} & FieldTypeInfo;
|
|
30
|
+
export type FieldTypeInfo = {
|
|
31
|
+
type: FieldTypes.checkbox;
|
|
32
|
+
} | {
|
|
33
|
+
type: FieldTypes.boolean;
|
|
34
|
+
} | {
|
|
35
|
+
type: FieldTypes.chip;
|
|
36
|
+
} | {
|
|
37
|
+
type: FieldTypes.singleselect;
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=definitions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.d.ts","sourceRoot":"/","sources":["types/definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,EAAE;QACN,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAAC;KACtC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,EAAE,CAAC;AAEtE,MAAM,MAAM,wBAAwB,GAAG,WAAW,EAAE,CAAC;AAErD,MAAM,MAAM,sBAAsB,GAAG;IACnC,IAAI,EAAE,WAAW,EAAE,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,CACjC;SAAG,KAAK,IAAI,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM;KAAE,GAC3D;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAClB,CAAC;CACH,GAAG,aAAa,CAAC;AAElB,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAA;CAAE,GAC7B;IAAE,IAAI,EAAE,UAAU,CAAC,OAAO,CAAA;CAAE,GAC5B;IAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAA;CAAE,GACzB;IAAE,IAAI,EAAE,UAAU,CAAC,YAAY,CAAA;CAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"definitions.js","sourceRoot":"/","sources":["types/definitions.ts"],"names":[],"mappings":"","sourcesContent":["import { SUPPORTED_LANGUAGES } from '../constants.js';\nimport { FieldTypes } from './fields.js';\nimport { Aggregation } from './search.js';\n\nexport type EsDefinitionField = {\n esMapping: unknown;\n sortKey?: string;\n};\n\nexport type EsDefinition = {\n name: string;\n nestedEsPaths: string[];\n fields: {\n [fieldId: string]: EsDefinitionField;\n };\n};\n\nexport type EsFullTextSearchDefinition = ((lang: string) => string)[];\n\nexport type EsAggregationsDefinition = Aggregation[];\n\nexport type PublicSearchDefinition = {\n aggs: Aggregation[];\n};\n\nexport type SearchField = {\n id: string;\n titles: { [lang: string]: string } & (\n | { [local in (typeof SUPPORTED_LANGUAGES)[number]]: string }\n | { key: string }\n );\n} & FieldTypeInfo;\n\nexport type FieldTypeInfo =\n | { type: FieldTypes.checkbox }\n | { type: FieldTypes.boolean }\n | { type: FieldTypes.chip }\n | { type: FieldTypes.singleselect };\n"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare enum FieldTypes {
|
|
2
|
+
singleselect = "singleselect",
|
|
3
|
+
checkbox = "checkbox",
|
|
4
|
+
chip = "chip",
|
|
5
|
+
boolean = "boolean"
|
|
6
|
+
}
|
|
7
|
+
type BaseMeta = {};
|
|
8
|
+
type NumberUnit = 'acre' | 'bit' | 'byte' | 'celsius' | 'centimeter' | 'day' | 'degree' | 'fahrenheit' | 'fluid-ounce' | 'foot' | 'gallon' | 'gigabit' | 'gigabyte' | 'gram' | 'hectare' | 'hour' | 'inch' | 'kilobit' | 'kilobyte' | 'kilogram' | 'kilometer' | 'liter' | 'megabit' | 'megabyte' | 'meter' | 'mile' | 'mile-scandinavian' | 'milliliter' | 'millimeter' | 'millisecond' | 'minute' | 'month' | 'ounce' | 'percent' | 'petabyte' | 'pound' | 'second' | 'stone' | 'terabit' | 'terabyte' | 'week' | 'yard' | 'year';
|
|
9
|
+
type BaseNumberMeta = {
|
|
10
|
+
minimumFractionDigits?: number;
|
|
11
|
+
maximumFractionDigits?: number;
|
|
12
|
+
useGrouping?: boolean;
|
|
13
|
+
} & ({
|
|
14
|
+
style: 'unit';
|
|
15
|
+
unit: NumberUnit;
|
|
16
|
+
} | {
|
|
17
|
+
style?: 'currency' | 'decimal' | 'percent';
|
|
18
|
+
unit?: NumberUnit;
|
|
19
|
+
});
|
|
20
|
+
export type NumberMeta = BaseMeta & BaseNumberMeta;
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=fields.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.d.ts","sourceRoot":"/","sources":["types/fields.ts"],"names":[],"mappings":"AAAA,oBAAY,UAAU;IACpB,YAAY,iBAAiB;IAC7B,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,OAAO,YAAY;CACpB;AAKD,KAAK,QAAQ,GAAG,EAAE,CAAC;AAEnB,KAAK,UAAU,GACX,MAAM,GACN,KAAK,GACL,MAAM,GACN,SAAS,GACT,YAAY,GACZ,KAAK,GACL,QAAQ,GACR,YAAY,GACZ,aAAa,GACb,MAAM,GACN,QAAQ,GACR,SAAS,GACT,UAAU,GACV,MAAM,GACN,SAAS,GACT,MAAM,GACN,MAAM,GACN,SAAS,GACT,UAAU,GACV,UAAU,GACV,WAAW,GACX,OAAO,GACP,SAAS,GACT,UAAU,GACV,OAAO,GACP,MAAM,GACN,mBAAmB,GACnB,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,QAAQ,GACR,OAAO,GACP,OAAO,GACP,SAAS,GACT,UAAU,GACV,OAAO,GACP,QAAQ,GACR,OAAO,GACP,SAAS,GACT,UAAU,GACV,MAAM,GACN,MAAM,GACN,MAAM,CAAC;AAEX,KAAK,cAAc,GAAG;IACpB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,CACA;IACE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;CAClB,GACD;IACE,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,CACJ,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export var FieldTypes;
|
|
2
|
+
(function (FieldTypes) {
|
|
3
|
+
FieldTypes["singleselect"] = "singleselect";
|
|
4
|
+
FieldTypes["checkbox"] = "checkbox";
|
|
5
|
+
FieldTypes["chip"] = "chip";
|
|
6
|
+
FieldTypes["boolean"] = "boolean";
|
|
7
|
+
})(FieldTypes || (FieldTypes = {}));
|
|
8
|
+
//# sourceMappingURL=fields.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields.js","sourceRoot":"/","sources":["types/fields.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,2CAA6B,CAAA;IAC7B,mCAAqB,CAAA;IACrB,2BAAa,CAAA;IACb,iCAAmB,CAAA;AACrB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB","sourcesContent":["export enum FieldTypes {\n singleselect = 'singleselect',\n checkbox = 'checkbox',\n chip = 'chip',\n boolean = 'boolean',\n}\n\n//\n// Field metas\n//\ntype BaseMeta = {};\n\ntype NumberUnit =\n | 'acre'\n | 'bit'\n | 'byte'\n | 'celsius'\n | 'centimeter'\n | 'day'\n | 'degree'\n | 'fahrenheit'\n | 'fluid-ounce'\n | 'foot'\n | 'gallon'\n | 'gigabit'\n | 'gigabyte'\n | 'gram'\n | 'hectare'\n | 'hour'\n | 'inch'\n | 'kilobit'\n | 'kilobyte'\n | 'kilogram'\n | 'kilometer'\n | 'liter'\n | 'megabit'\n | 'megabyte'\n | 'meter'\n | 'mile'\n | 'mile-scandinavian'\n | 'milliliter'\n | 'millimeter'\n | 'millisecond'\n | 'minute'\n | 'month'\n | 'ounce'\n | 'percent'\n | 'petabyte'\n | 'pound'\n | 'second'\n | 'stone'\n | 'terabit'\n | 'terabyte'\n | 'week'\n | 'yard'\n | 'year';\n\ntype BaseNumberMeta = {\n minimumFractionDigits?: number;\n maximumFractionDigits?: number;\n useGrouping?: boolean;\n} & (\n | {\n style: 'unit';\n unit: NumberUnit;\n }\n | {\n style?: 'currency' | 'decimal' | 'percent';\n unit?: NumberUnit;\n }\n);\n\nexport type NumberMeta = BaseMeta & BaseNumberMeta;\n"]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export type EmailRequest = {
|
|
2
|
+
subject: string;
|
|
3
|
+
references?: string[] | string;
|
|
4
|
+
destinations: EmailDestination[];
|
|
5
|
+
source: EmailAddress;
|
|
6
|
+
replyTo?: EmailAddress;
|
|
7
|
+
inReplyTo?: string;
|
|
8
|
+
body: {
|
|
9
|
+
text?: string;
|
|
10
|
+
html: string;
|
|
11
|
+
} | {
|
|
12
|
+
html?: string;
|
|
13
|
+
text: string;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export type EmailDestination = EmailAddress & {
|
|
17
|
+
addressType: 'TO' | 'CC' | 'BCC';
|
|
18
|
+
};
|
|
19
|
+
export type EmailAddress = {
|
|
20
|
+
name?: string;
|
|
21
|
+
email: string;
|
|
22
|
+
};
|
|
23
|
+
export type EmailMessage = {
|
|
24
|
+
id: string;
|
|
25
|
+
sentAt: string;
|
|
26
|
+
subject: string;
|
|
27
|
+
source: EmailAddress;
|
|
28
|
+
replyTo?: EmailAddress;
|
|
29
|
+
destinations: EmailDestination[];
|
|
30
|
+
};
|
|
31
|
+
export type ContactForm = {
|
|
32
|
+
content: string;
|
|
33
|
+
email: string;
|
|
34
|
+
name?: string;
|
|
35
|
+
phone: string;
|
|
36
|
+
reference: string;
|
|
37
|
+
type: string;
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"/","sources":["types/messages.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC/B,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,EACA;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,GACD;QACE,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACP,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG;IAC5C,WAAW,EAAE,IAAI,GAAG,IAAI,GAAG,KAAK,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,YAAY,EAAE,gBAAgB,EAAE,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"/","sources":["types/messages.ts"],"names":[],"mappings":"","sourcesContent":["export type EmailRequest = {\n subject: string;\n references?: string[] | string;\n destinations: EmailDestination[];\n source: EmailAddress;\n replyTo?: EmailAddress;\n inReplyTo?: string;\n body:\n | {\n text?: string;\n html: string;\n }\n | {\n html?: string;\n text: string;\n };\n};\n\nexport type EmailDestination = EmailAddress & {\n addressType: 'TO' | 'CC' | 'BCC';\n};\n\nexport type EmailAddress = {\n name?: string;\n email: string;\n};\n\nexport type EmailMessage = {\n id: string;\n sentAt: string;\n subject: string;\n source: EmailAddress;\n replyTo?: EmailAddress;\n destinations: EmailDestination[];\n};\n\nexport type ContactForm = {\n content: string;\n email: string;\n name?: string;\n phone: string;\n reference: string;\n type: string;\n};\n"]}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { FieldTypes, NumberMeta } from './fields.js';
|
|
2
|
+
export declare enum ConditionType {
|
|
3
|
+
and = "AND",
|
|
4
|
+
or = "OR"
|
|
5
|
+
}
|
|
6
|
+
export declare enum ElasticsearchOperator {
|
|
7
|
+
empty = "EMPTY",
|
|
8
|
+
notEmpty = "NOT_EMPTY",
|
|
9
|
+
is = "IS",
|
|
10
|
+
isNot = "IS_NOT",
|
|
11
|
+
greaterThanOrEqual = "GTE",
|
|
12
|
+
greaterThan = "GT",
|
|
13
|
+
lessThanEqual = "LTE",
|
|
14
|
+
lessThan = "LT",
|
|
15
|
+
between = "BETWEEN",
|
|
16
|
+
contains = "CONTAINS",
|
|
17
|
+
notContains = "NOT_CONTAINS",
|
|
18
|
+
startsWith = "STARTS_WITH",
|
|
19
|
+
endsWith = "ENDS_WITH"
|
|
20
|
+
}
|
|
21
|
+
export type Filter<OP = ElasticsearchOperator> = {
|
|
22
|
+
data: string;
|
|
23
|
+
fieldId: string;
|
|
24
|
+
operator: OP;
|
|
25
|
+
};
|
|
26
|
+
export type ComplexFilter<OP = ElasticsearchOperator> = {
|
|
27
|
+
condition: ConditionType;
|
|
28
|
+
filters: Array<Filter<OP> | ComplexFilter<OP>>;
|
|
29
|
+
};
|
|
30
|
+
export type SearchResponse<T = any> = {
|
|
31
|
+
took: number;
|
|
32
|
+
timed_out: boolean;
|
|
33
|
+
_scroll_id?: string;
|
|
34
|
+
_shards: unknown;
|
|
35
|
+
hits: {
|
|
36
|
+
total: {
|
|
37
|
+
value: number;
|
|
38
|
+
relation: 'eq' | 'gte';
|
|
39
|
+
};
|
|
40
|
+
max_score: number;
|
|
41
|
+
hits: Array<{
|
|
42
|
+
_index: string;
|
|
43
|
+
_type: string;
|
|
44
|
+
_id: string;
|
|
45
|
+
_score: number;
|
|
46
|
+
_source?: T;
|
|
47
|
+
_version?: number;
|
|
48
|
+
_explanation?: unknown;
|
|
49
|
+
fields?: any;
|
|
50
|
+
highlight?: any;
|
|
51
|
+
inner_hits?: any;
|
|
52
|
+
matched_queries?: string[];
|
|
53
|
+
sort?: Array<string | number>;
|
|
54
|
+
}>;
|
|
55
|
+
};
|
|
56
|
+
aggregations?: {
|
|
57
|
+
[aggName: string]: object;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
export type PaginatedList<T> = {
|
|
61
|
+
results: T[];
|
|
62
|
+
totalCount: number;
|
|
63
|
+
};
|
|
64
|
+
export declare enum SortOrder {
|
|
65
|
+
asc = "asc",
|
|
66
|
+
desc = "desc"
|
|
67
|
+
}
|
|
68
|
+
export type SortFilter = {
|
|
69
|
+
fieldId: string;
|
|
70
|
+
order: SortOrder;
|
|
71
|
+
};
|
|
72
|
+
export type SearchRequest = {
|
|
73
|
+
fullText?: string;
|
|
74
|
+
limit: number;
|
|
75
|
+
offset?: number;
|
|
76
|
+
query?: ComplexFilter<ElasticsearchOperator>;
|
|
77
|
+
sortBy?: SortFilter[];
|
|
78
|
+
};
|
|
79
|
+
export type LeasingSimulationRequest = {
|
|
80
|
+
deposit: number;
|
|
81
|
+
residual: number;
|
|
82
|
+
durationInMonths: number;
|
|
83
|
+
vehicleId: string;
|
|
84
|
+
};
|
|
85
|
+
export type LeasingSimulationResponse = {
|
|
86
|
+
monthly: string;
|
|
87
|
+
};
|
|
88
|
+
export type AggFilterOperator = ElasticsearchOperator.is | ElasticsearchOperator.greaterThan | ElasticsearchOperator.lessThan | ElasticsearchOperator.greaterThanOrEqual | ElasticsearchOperator.lessThanEqual;
|
|
89
|
+
export declare enum AggregationType {
|
|
90
|
+
term = "TERM",
|
|
91
|
+
range = "RANGE"
|
|
92
|
+
}
|
|
93
|
+
export type TermAggregation = {
|
|
94
|
+
field: string;
|
|
95
|
+
type: AggregationType.term;
|
|
96
|
+
fieldType: FieldTypes;
|
|
97
|
+
orderBy?: 'count' | 'field';
|
|
98
|
+
};
|
|
99
|
+
export type Range = {
|
|
100
|
+
start: number;
|
|
101
|
+
end?: number;
|
|
102
|
+
} | {
|
|
103
|
+
start?: number;
|
|
104
|
+
end: number;
|
|
105
|
+
} | {
|
|
106
|
+
start: number;
|
|
107
|
+
end: number;
|
|
108
|
+
};
|
|
109
|
+
export type RangeAggregation = {
|
|
110
|
+
field: string;
|
|
111
|
+
type: AggregationType.range;
|
|
112
|
+
ranges: Range[];
|
|
113
|
+
format?: NumberMeta;
|
|
114
|
+
};
|
|
115
|
+
export type Aggregation = TermAggregation | RangeAggregation;
|
|
116
|
+
export type AggregationSpecs = {
|
|
117
|
+
aggregations: Aggregation[];
|
|
118
|
+
};
|
|
119
|
+
export type AggregationRequest = {
|
|
120
|
+
fullText?: string;
|
|
121
|
+
filters: Filter<AggFilterOperator>[];
|
|
122
|
+
};
|
|
123
|
+
export type AggregationResult = {
|
|
124
|
+
value: string;
|
|
125
|
+
count: number;
|
|
126
|
+
from?: number;
|
|
127
|
+
to?: number;
|
|
128
|
+
};
|
|
129
|
+
export type AggregationResultSet = {
|
|
130
|
+
[field: string]: AggregationResult[];
|
|
131
|
+
};
|
|
132
|
+
export type EsDefinitionField = {
|
|
133
|
+
esMapping: unknown;
|
|
134
|
+
sortKey?: string;
|
|
135
|
+
};
|
|
136
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"/","sources":["types/search.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export var ConditionType;
|
|
2
|
+
(function (ConditionType) {
|
|
3
|
+
ConditionType["and"] = "AND";
|
|
4
|
+
ConditionType["or"] = "OR";
|
|
5
|
+
})(ConditionType || (ConditionType = {}));
|
|
6
|
+
export var ElasticsearchOperator;
|
|
7
|
+
(function (ElasticsearchOperator) {
|
|
8
|
+
ElasticsearchOperator["empty"] = "EMPTY";
|
|
9
|
+
ElasticsearchOperator["notEmpty"] = "NOT_EMPTY";
|
|
10
|
+
ElasticsearchOperator["is"] = "IS";
|
|
11
|
+
ElasticsearchOperator["isNot"] = "IS_NOT";
|
|
12
|
+
ElasticsearchOperator["greaterThanOrEqual"] = "GTE";
|
|
13
|
+
ElasticsearchOperator["greaterThan"] = "GT";
|
|
14
|
+
ElasticsearchOperator["lessThanEqual"] = "LTE";
|
|
15
|
+
ElasticsearchOperator["lessThan"] = "LT";
|
|
16
|
+
ElasticsearchOperator["between"] = "BETWEEN";
|
|
17
|
+
ElasticsearchOperator["contains"] = "CONTAINS";
|
|
18
|
+
ElasticsearchOperator["notContains"] = "NOT_CONTAINS";
|
|
19
|
+
ElasticsearchOperator["startsWith"] = "STARTS_WITH";
|
|
20
|
+
ElasticsearchOperator["endsWith"] = "ENDS_WITH";
|
|
21
|
+
})(ElasticsearchOperator || (ElasticsearchOperator = {}));
|
|
22
|
+
export var SortOrder;
|
|
23
|
+
(function (SortOrder) {
|
|
24
|
+
SortOrder["asc"] = "asc";
|
|
25
|
+
SortOrder["desc"] = "desc";
|
|
26
|
+
})(SortOrder || (SortOrder = {}));
|
|
27
|
+
export var AggregationType;
|
|
28
|
+
(function (AggregationType) {
|
|
29
|
+
AggregationType["term"] = "TERM";
|
|
30
|
+
AggregationType["range"] = "RANGE";
|
|
31
|
+
})(AggregationType || (AggregationType = {}));
|
|
32
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"/","sources":["types/search.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,4BAAW,CAAA;IACX,0BAAS,CAAA;AACX,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAN,IAAY,qBAiBX;AAjBD,WAAY,qBAAqB;IAE/B,wCAAe,CAAA;IACf,+CAAsB,CAAA;IACtB,kCAAS,CAAA;IACT,yCAAgB,CAAA;IAEhB,mDAA0B,CAAA;IAC1B,2CAAkB,CAAA;IAClB,8CAAqB,CAAA;IACrB,wCAAe,CAAA;IACf,4CAAmB,CAAA;IAEnB,8CAAqB,CAAA;IACrB,qDAA4B,CAAA;IAC5B,mDAA0B,CAAA;IAC1B,+CAAsB,CAAA;AACxB,CAAC,EAjBW,qBAAqB,KAArB,qBAAqB,QAiBhC;AAmDD,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,wBAAW,CAAA;IACX,0BAAa,CAAA;AACf,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAyCD,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,gCAAa,CAAA;IACb,kCAAe,CAAA;AACjB,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B","sourcesContent":["///////////////////////////////////////////////////////\n// Generic stuff\n///////////////////////////////////////////////////////\n\nimport { FieldTypes, NumberMeta } from './fields.js';\n\nexport enum ConditionType {\n and = 'AND',\n or = 'OR',\n}\n\nexport enum ElasticsearchOperator {\n // all properties\n empty = 'EMPTY',\n notEmpty = 'NOT_EMPTY',\n is = 'IS',\n isNot = 'IS_NOT',\n // number, date properties\n greaterThanOrEqual = 'GTE',\n greaterThan = 'GT',\n lessThanEqual = 'LTE',\n lessThan = 'LT',\n between = 'BETWEEN',\n // string properties\n contains = 'CONTAINS',\n notContains = 'NOT_CONTAINS',\n startsWith = 'STARTS_WITH',\n endsWith = 'ENDS_WITH',\n}\n\nexport type Filter<OP = ElasticsearchOperator> = {\n data: string;\n fieldId: string;\n operator: OP;\n};\n\nexport type ComplexFilter<OP = ElasticsearchOperator> = {\n condition: ConditionType;\n filters: Array<Filter<OP> | ComplexFilter<OP>>;\n};\n\nexport type SearchResponse<T = any> = {\n took: number;\n timed_out: boolean;\n _scroll_id?: string;\n _shards: unknown;\n hits: {\n total: {\n value: number;\n relation: 'eq' | 'gte';\n };\n max_score: number;\n hits: Array<{\n _index: string;\n _type: string;\n _id: string;\n _score: number;\n _source?: T;\n _version?: number;\n _explanation?: unknown;\n fields?: any;\n highlight?: any;\n inner_hits?: any;\n matched_queries?: string[];\n sort?: Array<string | number>;\n }>;\n };\n aggregations?: { [aggName: string]: object };\n};\n\n///////////////////////////////////////////////////////\n// Search\n///////////////////////////////////////////////////////\n\nexport type PaginatedList<T> = {\n results: T[];\n totalCount: number;\n};\n\nexport enum SortOrder {\n asc = 'asc',\n desc = 'desc',\n}\n\nexport type SortFilter = {\n fieldId: string;\n order: SortOrder;\n};\n\nexport type SearchRequest = {\n fullText?: string;\n limit: number;\n offset?: number;\n query?: ComplexFilter<ElasticsearchOperator>;\n sortBy?: SortFilter[];\n};\n\n///////////////////////////////////////////////////////\n// Simulations\n///////////////////////////////////////////////////////\n\nexport type LeasingSimulationRequest = {\n deposit: number;\n residual: number;\n durationInMonths: number;\n vehicleId: string;\n};\n\nexport type LeasingSimulationResponse = {\n monthly: string;\n};\n\n///////////////////////////////////////////////////////\n// Aggregations\n///////////////////////////////////////////////////////\n\nexport type AggFilterOperator =\n | ElasticsearchOperator.is\n | ElasticsearchOperator.greaterThan\n | ElasticsearchOperator.lessThan\n | ElasticsearchOperator.greaterThanOrEqual\n | ElasticsearchOperator.lessThanEqual;\n\nexport enum AggregationType {\n term = 'TERM',\n range = 'RANGE',\n}\n\nexport type TermAggregation = {\n field: string;\n type: AggregationType.term;\n fieldType: FieldTypes;\n orderBy?: 'count' | 'field';\n};\n\nexport type Range =\n | {\n start: number;\n end?: number;\n }\n | {\n start?: number;\n end: number;\n }\n | {\n start: number;\n end: number;\n };\n\nexport type RangeAggregation = {\n field: string;\n type: AggregationType.range;\n ranges: Range[];\n format?: NumberMeta;\n};\n\nexport type Aggregation = TermAggregation | RangeAggregation;\n\nexport type AggregationSpecs = {\n aggregations: Aggregation[];\n};\n\nexport type AggregationRequest = {\n fullText?: string;\n filters: Filter<AggFilterOperator>[];\n};\n\nexport type AggregationResult = {\n value: string;\n count: number;\n from?: number;\n to?: number;\n};\n\nexport type AggregationResultSet = {\n [field: string]: AggregationResult[];\n};\n\nexport type EsDefinitionField = {\n esMapping: unknown;\n sortKey?: string;\n};\n"]}
|
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
export type WebsiteVehicle = {
|
|
2
|
+
id: string;
|
|
3
|
+
external: VehicleExternalInfo;
|
|
4
|
+
};
|
|
5
|
+
export type VehicleExternalInfo = {
|
|
6
|
+
body?: {
|
|
7
|
+
cabin?: {
|
|
8
|
+
type: 'Day' | 'Sleep / Small' | 'Sleep / Medium' | 'Sleep / Large';
|
|
9
|
+
model?: string;
|
|
10
|
+
};
|
|
11
|
+
colour?: string;
|
|
12
|
+
dimensions?: {
|
|
13
|
+
height?: number;
|
|
14
|
+
length?: number;
|
|
15
|
+
width?: number;
|
|
16
|
+
};
|
|
17
|
+
doorCount?: number;
|
|
18
|
+
interior?: {
|
|
19
|
+
bedCount?: number;
|
|
20
|
+
seatCount?: number;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
mainPicture?: AttachmentValue;
|
|
24
|
+
pictures?: AttachmentValue[];
|
|
25
|
+
videos?: AttachmentValue[];
|
|
26
|
+
condition?: {
|
|
27
|
+
damaged?: boolean;
|
|
28
|
+
odometer?: {
|
|
29
|
+
km?: number;
|
|
30
|
+
};
|
|
31
|
+
used?: boolean;
|
|
32
|
+
};
|
|
33
|
+
general: {
|
|
34
|
+
bodystyle?: string;
|
|
35
|
+
category: string;
|
|
36
|
+
make?: string;
|
|
37
|
+
model?: string;
|
|
38
|
+
modelName?: string;
|
|
39
|
+
type?: string;
|
|
40
|
+
typeName?: string;
|
|
41
|
+
tacho?: VehicleTachoTypes;
|
|
42
|
+
};
|
|
43
|
+
history?: {
|
|
44
|
+
advertisingYear?: number;
|
|
45
|
+
constructionYear?: number;
|
|
46
|
+
currentRegistration?: {
|
|
47
|
+
country?: string;
|
|
48
|
+
technicalInspectionEndDate?: string;
|
|
49
|
+
carpassUrl?: string;
|
|
50
|
+
carpassAvailable?: boolean;
|
|
51
|
+
};
|
|
52
|
+
firstRegistration?: string;
|
|
53
|
+
cocPvg?: string;
|
|
54
|
+
};
|
|
55
|
+
identification: {
|
|
56
|
+
licensePlate?: string;
|
|
57
|
+
stockNumber?: string;
|
|
58
|
+
vin?: string;
|
|
59
|
+
buildStockNumber?: string;
|
|
60
|
+
engineNumber?: string;
|
|
61
|
+
};
|
|
62
|
+
powertrain?: {
|
|
63
|
+
axles?: VehicleAxlesInfo;
|
|
64
|
+
emissions?: {
|
|
65
|
+
class?: string;
|
|
66
|
+
};
|
|
67
|
+
engine?: {
|
|
68
|
+
cylinderCount?: number;
|
|
69
|
+
energy?: {
|
|
70
|
+
type?: VehicleFuelType;
|
|
71
|
+
};
|
|
72
|
+
power?: {
|
|
73
|
+
hp?: number;
|
|
74
|
+
};
|
|
75
|
+
displacement?: number;
|
|
76
|
+
};
|
|
77
|
+
transmission?: {
|
|
78
|
+
gearCount?: number;
|
|
79
|
+
make?: string;
|
|
80
|
+
model?: string;
|
|
81
|
+
type?: 'Automatic' | 'Manual' | 'Semi-Automatic';
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
salesConditions: {
|
|
85
|
+
leasing?: boolean;
|
|
86
|
+
expected?: boolean;
|
|
87
|
+
price?: string | undefined;
|
|
88
|
+
currency?: string | undefined;
|
|
89
|
+
marginScheme?: boolean;
|
|
90
|
+
manufacturerWarranty?: {
|
|
91
|
+
remarks?: string;
|
|
92
|
+
available?: boolean;
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
superstructure?: VehicleSuperstructure;
|
|
96
|
+
weights?: {
|
|
97
|
+
gvw?: number;
|
|
98
|
+
massEmpty?: number;
|
|
99
|
+
};
|
|
100
|
+
accessories: {
|
|
101
|
+
abs?: boolean;
|
|
102
|
+
adr?: boolean;
|
|
103
|
+
airco?: boolean;
|
|
104
|
+
alloyWheels?: boolean;
|
|
105
|
+
aluminiumFuelTank?: boolean;
|
|
106
|
+
cdPlayer?: boolean;
|
|
107
|
+
centralLocking?: boolean;
|
|
108
|
+
centralLubrication?: boolean;
|
|
109
|
+
cruiseControl?: boolean;
|
|
110
|
+
electricDoorMirrors?: boolean;
|
|
111
|
+
electricWindows?: boolean;
|
|
112
|
+
engineBrake?: boolean;
|
|
113
|
+
forklift?: boolean;
|
|
114
|
+
navigationSystem?: boolean;
|
|
115
|
+
hydraulicTipperKit?: boolean;
|
|
116
|
+
lowDeck?: boolean;
|
|
117
|
+
lowNoise?: boolean;
|
|
118
|
+
parkingHeater?: boolean;
|
|
119
|
+
particleFilter?: boolean;
|
|
120
|
+
powerTakeOff?: boolean;
|
|
121
|
+
refrigerator?: boolean;
|
|
122
|
+
retarderIntarder?: boolean;
|
|
123
|
+
reversingCamera?: boolean;
|
|
124
|
+
roofSpoiler?: boolean;
|
|
125
|
+
sideSkirts?: boolean;
|
|
126
|
+
spareKey?: boolean;
|
|
127
|
+
spareWheel?: boolean;
|
|
128
|
+
speedLimiter?: boolean;
|
|
129
|
+
spoilers?: boolean;
|
|
130
|
+
spotlights?: boolean;
|
|
131
|
+
stabilityControl?: boolean;
|
|
132
|
+
standardAirco?: boolean;
|
|
133
|
+
television?: boolean;
|
|
134
|
+
toolbox?: boolean;
|
|
135
|
+
trailerCoupling?: boolean;
|
|
136
|
+
twinFuelTank?: boolean;
|
|
137
|
+
visor?: boolean;
|
|
138
|
+
xenonLights?: boolean;
|
|
139
|
+
};
|
|
140
|
+
publicLink?: string;
|
|
141
|
+
};
|
|
142
|
+
export type AttachmentValue = {
|
|
143
|
+
contentType: string;
|
|
144
|
+
fileName: string;
|
|
145
|
+
id: string;
|
|
146
|
+
previewSrc?: string;
|
|
147
|
+
size: number;
|
|
148
|
+
uploadedAt: string;
|
|
149
|
+
uploadedBy: string;
|
|
150
|
+
url: string;
|
|
151
|
+
descriptions?: string | MultiLangValue;
|
|
152
|
+
};
|
|
153
|
+
export type MultiLangValue = {
|
|
154
|
+
key?: string;
|
|
155
|
+
} & {
|
|
156
|
+
[languageCode: string]: string;
|
|
157
|
+
};
|
|
158
|
+
export type VehicleAxlesInfo = {
|
|
159
|
+
details: VehicleAxle[];
|
|
160
|
+
configuration?: string;
|
|
161
|
+
count?: number;
|
|
162
|
+
poweredAxlesCount?: number;
|
|
163
|
+
wheelbase?: number;
|
|
164
|
+
suspension?: 'Air' | 'Air/Steel' | 'Steel';
|
|
165
|
+
};
|
|
166
|
+
export type VehicleAxle = {
|
|
167
|
+
make?: string;
|
|
168
|
+
alloyWheels?: boolean;
|
|
169
|
+
brakes?: 'Disc' | 'Drum';
|
|
170
|
+
differentialLock?: boolean;
|
|
171
|
+
liftAxle?: boolean;
|
|
172
|
+
maxLoad?: number;
|
|
173
|
+
nr: number;
|
|
174
|
+
position?: string;
|
|
175
|
+
powered?: boolean;
|
|
176
|
+
reduction?: string;
|
|
177
|
+
steering?: boolean;
|
|
178
|
+
suspension?: 'Steel' | 'Air' | 'Hydraulic';
|
|
179
|
+
twinWheels?: boolean;
|
|
180
|
+
tyreSize?: string;
|
|
181
|
+
tyreConditionType?: 'mm' | '%';
|
|
182
|
+
tyreConditionMmLeftInside?: number;
|
|
183
|
+
tyreConditionMmLeftOutside?: number;
|
|
184
|
+
tyreConditionMmRightInside?: number;
|
|
185
|
+
tyreConditionMmRightOutside?: number;
|
|
186
|
+
tyreConditionPercLeftInside?: number;
|
|
187
|
+
tyreConditionPercLeftOutside?: number;
|
|
188
|
+
tyreConditionPercRightInside?: number;
|
|
189
|
+
tyreConditionPercRightOutside?: number;
|
|
190
|
+
};
|
|
191
|
+
type VehicleSuperstructure = {
|
|
192
|
+
carCapacity?: number;
|
|
193
|
+
compartmentCount?: number;
|
|
194
|
+
counter?: boolean;
|
|
195
|
+
crane?: {
|
|
196
|
+
make?: string;
|
|
197
|
+
model?: string;
|
|
198
|
+
position?: 'Behind the cabin' | 'Rear';
|
|
199
|
+
present?: boolean;
|
|
200
|
+
year?: number;
|
|
201
|
+
};
|
|
202
|
+
dimensions?: {
|
|
203
|
+
height?: number;
|
|
204
|
+
length?: number;
|
|
205
|
+
width?: number;
|
|
206
|
+
extended?: string;
|
|
207
|
+
heightened?: string;
|
|
208
|
+
};
|
|
209
|
+
baseVehicle?: SuperstructureBaseVehicle;
|
|
210
|
+
extendable?: boolean;
|
|
211
|
+
highPressurePump?: boolean;
|
|
212
|
+
loadingPlatformHeight?: number;
|
|
213
|
+
pump?: boolean;
|
|
214
|
+
slidingRoof?: boolean;
|
|
215
|
+
tailgate?: {
|
|
216
|
+
capacity?: number;
|
|
217
|
+
make?: string;
|
|
218
|
+
model?: string;
|
|
219
|
+
present?: boolean;
|
|
220
|
+
type?: 'slider_lift' | 'cantilever' | 'column_lift';
|
|
221
|
+
};
|
|
222
|
+
tank?: {
|
|
223
|
+
capacity: number;
|
|
224
|
+
};
|
|
225
|
+
temperatureControl?: {
|
|
226
|
+
engineType?: 'diesel' | 'electric' | 'diesel+electric' | 'engine';
|
|
227
|
+
make?: string;
|
|
228
|
+
runningHours?: {
|
|
229
|
+
diesel?: number;
|
|
230
|
+
electric?: number;
|
|
231
|
+
};
|
|
232
|
+
};
|
|
233
|
+
tipper?: {
|
|
234
|
+
tipsBack?: boolean;
|
|
235
|
+
tipsLeft?: boolean;
|
|
236
|
+
tipsRight?: boolean;
|
|
237
|
+
};
|
|
238
|
+
};
|
|
239
|
+
export declare enum VehicleTachoTypes {
|
|
240
|
+
Analog = "ANALOG",
|
|
241
|
+
Digital = "DIGITAL",
|
|
242
|
+
SmartTacho1 = "SMART_TACHO_1",
|
|
243
|
+
SmartTacho2 = "SMART_TACHO_2"
|
|
244
|
+
}
|
|
245
|
+
export declare enum VehicleFuelType {
|
|
246
|
+
Petrol = "PETROL",
|
|
247
|
+
Diesel = "DIESEL",
|
|
248
|
+
LPG = "LPG",
|
|
249
|
+
LPG_G3 = "LPG_G3",
|
|
250
|
+
Electric = "ELECTRIC",
|
|
251
|
+
CNG = "CNG",
|
|
252
|
+
Hydrogen = "HYDROGEN",
|
|
253
|
+
BioEthanol = "BIO_ETHANOL",
|
|
254
|
+
BioDiesel = "BIO_DIESEL",
|
|
255
|
+
E85 = "E85",
|
|
256
|
+
HCNG = "HCNG",
|
|
257
|
+
LPG_Petrol = "LPG_PETROL",
|
|
258
|
+
LPG_Diesel = "LPG_DIESEL",
|
|
259
|
+
LPG_G3_Petrol = "LPG_G3_PETROL",
|
|
260
|
+
LPG_G3_Diesel = "LPG_G3_DIESEL",
|
|
261
|
+
Electric_Diesel = "ELECTRIC_DIESEL",
|
|
262
|
+
Electric_Petrol = "ELECTRIC_PETROL",
|
|
263
|
+
Hybrid = "HYBRID",
|
|
264
|
+
Other = "OTHER"
|
|
265
|
+
}
|
|
266
|
+
export type SuperstructureBaseVehicle = {
|
|
267
|
+
category: string;
|
|
268
|
+
make: string;
|
|
269
|
+
model?: string;
|
|
270
|
+
type?: string;
|
|
271
|
+
axlesConfiguration?: string;
|
|
272
|
+
emissionsClass?: string;
|
|
273
|
+
transmissionType?: 'Automatic' | 'Manual' | 'Semi-Automatic';
|
|
274
|
+
vin?: string;
|
|
275
|
+
currentRegistration?: {
|
|
276
|
+
country?: string;
|
|
277
|
+
};
|
|
278
|
+
suspension?: 'Air' | 'Air/Steel' | 'Steel';
|
|
279
|
+
constructionYear?: number;
|
|
280
|
+
firstRegistration?: string;
|
|
281
|
+
odometerKm?: number;
|
|
282
|
+
powerHp?: number;
|
|
283
|
+
bodystyle?: string;
|
|
284
|
+
accessories: VehicleExternalInfo['accessories'];
|
|
285
|
+
superstructure?: Pick<VehicleSuperstructure, 'crane' | 'tailgate'>;
|
|
286
|
+
};
|
|
287
|
+
export {};
|
|
288
|
+
//# sourceMappingURL=vehicle.d.ts.map
|