aboutsummaryrefslogtreecommitdiff
path: root/viewer/src/@types/gallery.d.ts
diff options
context:
space:
mode:
authorZero~Informatique2020-01-31 09:17:57 +0100
committerZero~Informatique2020-01-31 09:27:06 +0100
commit170da2d55fec0359cbac780786383710b734eda7 (patch)
treeeb6fe6f60e9b83a9e5886b504aa65521711fd4a3 /viewer/src/@types/gallery.d.ts
parenta7d459a2620fa9523dd7ce8c9de519133ad5b1b7 (diff)
downloadldgallery-170da2d55fec0359cbac780786383710b734eda7.tar.gz
viewer: code cleaning, moved some views to components
Diffstat (limited to 'viewer/src/@types/gallery.d.ts')
-rw-r--r--viewer/src/@types/gallery.d.ts52
1 files changed, 52 insertions, 0 deletions
diff --git a/viewer/src/@types/gallery.d.ts b/viewer/src/@types/gallery.d.ts
new file mode 100644
index 0000000..b112b6d
--- /dev/null
+++ b/viewer/src/@types/gallery.d.ts
@@ -0,0 +1,52 @@
1/* ldgallery - A static generator which turns a collection of tagged
2-- pictures into a searchable web gallery.
3--
4-- Copyright (C) 2019-2020 Guillaume FOUET
5--
6-- This program is free software: you can redistribute it and/or modify
7-- it under the terms of the GNU Affero General Public License as
8-- published by the Free Software Foundation, either version 3 of the
9-- License, or (at your option) any later version.
10--
11-- This program is distributed in the hope that it will be useful,
12-- but WITHOUT ANY WARRANTY; without even the implied warranty of
13-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14-- GNU Affero General Public License for more details.
15--
16-- You should have received a copy of the GNU Affero General Public License
17-- along with this program. If not, see <https://www.gnu.org/licenses/>.
18*/
19
20declare namespace Gallery {
21 interface Other extends Item {
22 properties: OtherProperties,
23 }
24 interface Picture extends Item {
25 properties: PictureProperties,
26 }
27 interface Directory extends Item {
28 properties: DirectoryProperties,
29 }
30 interface Item {
31 title: string,
32 datetime: string,
33 description: string,
34 tags: RawTag[],
35 path: string,
36 thumbnail?: string,
37 properties: OtherProperties | PictureProperties | DirectoryProperties,
38 }
39 interface OtherProperties {
40 type: "other",
41 }
42 interface PictureProperties {
43 type: "picture",
44 resource: string,
45 }
46 interface DirectoryProperties {
47 type: "directory",
48 items: Item[]
49 }
50 type RawTag = string;
51 type ItemType = "other" | "picture" | "directory";
52} \ No newline at end of file