your personal website on atproto - mirror
blento.app
1import type { Blob } from '@atcute/lexicons';
2import type { AppBskyActorDefs } from '@atcute/bluesky';
3
4export type Item = {
5 id: string;
6
7 w: number;
8 h: number;
9 x: number;
10 y: number;
11
12 mobileW: number;
13 mobileH: number;
14 mobileX: number;
15 mobileY: number;
16
17 cardType: string;
18
19 color?: string;
20
21 // eslint-disable-next-line @typescript-eslint/no-explicit-any
22 cardData: any;
23
24 updatedAt?: string;
25
26 version?: number;
27
28 page?: string;
29};
30
31export type WebsiteData = {
32 page: string;
33 did: string;
34 handle: string;
35
36 cards: Item[];
37 publication:
38 | {
39 url?: string;
40 name?: string;
41 description?: string;
42 icon?: Blob;
43 preferences?: {
44 /**
45 * @deprecated
46 *
47 * use hideProfileSection instead
48 */
49 hideProfile?: boolean;
50
51 // use this instead
52 hideProfileSection?: boolean;
53 };
54 }
55 | undefined;
56 profile: AppBskyActorDefs.ProfileViewDetailed;
57
58 additionalData: Record<string, unknown>;
59 updatedAt: number;
60 version?: number;
61};
62
63export type UserCache = {
64 get: (key: string) => string;
65 put: (key: string, value: string) => void;
66};