Initial commit

This commit is contained in:
root
2026-01-26 08:34:48 +01:00
commit 387314581f
216 changed files with 81204 additions and 0 deletions
+70
View File
@@ -0,0 +1,70 @@
export interface User {
id: string;
handle: string;
displayName: string;
avatarUrl?: string | null;
bio?: string | null;
headerUrl?: string | null;
followersCount?: number;
followingCount?: number;
postsCount?: number;
website?: string | null;
createdAt?: string;
movedTo?: string | null;
isRemote?: boolean;
profileUrl?: string | null;
isBot?: boolean;
isSwarm?: boolean; // Whether this user is from a Synapsis swarm node
nodeDomain?: string | null; // Domain of the node this user is from (for swarm users)
botOwner?: {
id: string;
handle: string;
displayName?: string | null;
avatarUrl?: string | null;
} | null;
}
export interface MediaItem {
id: string;
url: string;
altText?: string | null;
mimeType?: string | null;
}
export interface Attachment {
id: string;
url: string;
altText?: string | null;
}
export interface Post {
id: string;
content: string;
createdAt: string;
likesCount: number;
repostsCount: number;
repliesCount: number;
author: User;
media?: MediaItem[];
linkPreviewUrl?: string | null;
linkPreviewTitle?: string | null;
linkPreviewDescription?: string | null;
linkPreviewImage?: string | null;
replyTo?: {
author: {
handle: string;
displayName: string;
};
} | null;
isLiked?: boolean;
isReposted?: boolean;
bot?: {
id: string;
name: string;
handle: string;
ownerId: string;
} | null;
nodeDomain?: string | null; // Domain of the node this post came from (for swarm posts)
isSwarm?: boolean; // Whether this is a swarm post from another node
originalPostId?: string; // Original post ID on the source node (for swarm posts)
}