1 | /* eslint-disable */
|
2 | /**
|
3 | * This file was automatically generated by json-schema-to-typescript.
|
4 | * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
|
5 | * and run json-schema-to-typescript to regenerate this file.
|
6 | */
|
7 |
|
8 | export type CollectionType =
|
9 | | "long_tail_collection"
|
10 | | "campaign"
|
11 | | "category"
|
12 | | "smart_pick"
|
13 | | "style"
|
14 | | "brand"
|
15 | | "look";
|
16 | export type ContentPosition = "left" | "right" | "center";
|
17 | export type Type = "video";
|
18 | export type Url = string;
|
19 | export type Link = string | null;
|
20 |
|
21 | export interface GetListingResponse {
|
22 | /**
|
23 | * Depict ID of the listing.
|
24 | */
|
25 | listing_id: string;
|
26 | /**
|
27 | * ID of the listing in the merchant PIM, CMS or similar.
|
28 | */
|
29 | external_id?: string;
|
30 | listing_type: CollectionType;
|
31 | /**
|
32 | * Show or hide this listing in navigation breadcrumbs.
|
33 | */
|
34 | show_in_breadcrumbs: boolean;
|
35 | /**
|
36 | * Show or hide this listing in quicklinks.
|
37 | */
|
38 | show_in_quicklinks: boolean;
|
39 | /**
|
40 | * List of image URLs for the listing.
|
41 | */
|
42 | image_urls: string[];
|
43 | title: string;
|
44 | slug?: string;
|
45 | /**
|
46 | * Ordered list of ancestors of the listing, useful for navigation breadcrumbs. The first element is the root listing.
|
47 | */
|
48 | ancestors: ProductListing[];
|
49 | /**
|
50 | * Siblings of the listing, i.e. listings that share the same parent, INCLUDING the listing itself. Sortet by title.
|
51 | */
|
52 | siblings: ProductListing[];
|
53 | /**
|
54 | * Children of the listing, i.e. listings that have the listing as their parent. Sorted by title.
|
55 | */
|
56 | children: ProductListing[];
|
57 | /**
|
58 | * List of content blocks to be displayed on the listing page. If none no content blocks should be displayed.
|
59 | */
|
60 | content_blocks: ContentBlock[];
|
61 | }
|
62 | /**
|
63 | * Represents a product listing, e.g. a category or a collection.
|
64 | */
|
65 | export interface ProductListing {
|
66 | /**
|
67 | * Depict ID of the listing.
|
68 | */
|
69 | listing_id: string;
|
70 | /**
|
71 | * ID of the listing in the merchant PIM, CMS or similar.
|
72 | */
|
73 | external_id?: string;
|
74 | listing_type: CollectionType;
|
75 | /**
|
76 | * Show or hide this listing in navigation breadcrumbs.
|
77 | */
|
78 | show_in_breadcrumbs: boolean;
|
79 | /**
|
80 | * Show or hide this listing in quicklinks.
|
81 | */
|
82 | show_in_quicklinks: boolean;
|
83 | /**
|
84 | * List of image URLs for the listing.
|
85 | */
|
86 | image_urls: string[];
|
87 | title: string;
|
88 | slug?: string;
|
89 | }
|
90 | export interface ContentBlock {
|
91 | span_columns: number;
|
92 | span_rows: number;
|
93 | position: ContentPosition;
|
94 | row: number;
|
95 | content: ImageContent | VideoContent;
|
96 | [k: string]: unknown;
|
97 | }
|
98 | export interface ImageContent {
|
99 | type?: "image";
|
100 | url: string;
|
101 | link: string;
|
102 | [k: string]: unknown;
|
103 | }
|
104 | export interface VideoContent {
|
105 | type?: Type;
|
106 | url: Url;
|
107 | link: Link;
|
108 | [k: string]: unknown;
|
109 | }
|