mirror of
https://github.com/luminous-devs/lume.git
synced 2024-10-03 02:10:53 +00:00
156 lines
2.4 KiB
TypeScript
156 lines
2.4 KiB
TypeScript
|
import {
|
||
|
type NDKEvent,
|
||
|
NDKRelayList,
|
||
|
type NDKUserProfile,
|
||
|
} from "@nostr-dev-kit/ndk";
|
||
|
|
||
|
export interface RichContent {
|
||
|
parsed: string;
|
||
|
images: string[];
|
||
|
videos: string[];
|
||
|
links: string[];
|
||
|
notes: string[];
|
||
|
}
|
||
|
|
||
|
export interface Account {
|
||
|
id: string;
|
||
|
pubkey: string;
|
||
|
is_active: number;
|
||
|
contacts: string[];
|
||
|
relayList: NDKRelayList;
|
||
|
}
|
||
|
|
||
|
export interface WidgetGroup {
|
||
|
title: string;
|
||
|
data: WidgetGroupItem[];
|
||
|
}
|
||
|
|
||
|
export interface WidgetGroupItem {
|
||
|
title: string;
|
||
|
description: string;
|
||
|
content: string;
|
||
|
kind: number;
|
||
|
icon?: string;
|
||
|
}
|
||
|
|
||
|
export interface WidgetProps {
|
||
|
id?: string;
|
||
|
account_id?: number;
|
||
|
kind: number;
|
||
|
title: string;
|
||
|
content: string;
|
||
|
}
|
||
|
|
||
|
export interface Chats {
|
||
|
id: string;
|
||
|
event_id?: string;
|
||
|
receiver_pubkey: string;
|
||
|
sender_pubkey: string;
|
||
|
content: string;
|
||
|
tags: string[][];
|
||
|
created_at: number;
|
||
|
new_messages?: number;
|
||
|
}
|
||
|
|
||
|
export interface Relays {
|
||
|
id?: string;
|
||
|
account_id?: number;
|
||
|
relay: string;
|
||
|
purpose?: string;
|
||
|
}
|
||
|
|
||
|
export interface Opengraph {
|
||
|
url: string;
|
||
|
title?: string;
|
||
|
description?: string;
|
||
|
image?: string;
|
||
|
}
|
||
|
|
||
|
export interface NDKEventWithReplies extends NDKEvent {
|
||
|
replies: Array<NDKEvent>;
|
||
|
}
|
||
|
|
||
|
export interface NostrBuildResponse {
|
||
|
ok: boolean;
|
||
|
data?: {
|
||
|
message: string;
|
||
|
status: string;
|
||
|
data: Array<{
|
||
|
blurhash: string;
|
||
|
dimensions: {
|
||
|
width: number;
|
||
|
height: number;
|
||
|
};
|
||
|
mime: string;
|
||
|
name: string;
|
||
|
sha256: string;
|
||
|
size: number;
|
||
|
url: string;
|
||
|
}>;
|
||
|
};
|
||
|
}
|
||
|
|
||
|
export interface Resource {
|
||
|
id: string;
|
||
|
title: string;
|
||
|
image: string;
|
||
|
}
|
||
|
|
||
|
export interface Resources {
|
||
|
title: string;
|
||
|
data: Array<Resource>;
|
||
|
}
|
||
|
|
||
|
export interface NDKCacheUser {
|
||
|
pubkey: string;
|
||
|
profile: string | NDKUserProfile;
|
||
|
createdAt: number;
|
||
|
}
|
||
|
|
||
|
export interface NDKCacheUserProfile extends NDKUserProfile {
|
||
|
pubkey: string;
|
||
|
}
|
||
|
|
||
|
export interface NDKCacheEvent {
|
||
|
id: string;
|
||
|
pubkey: string;
|
||
|
content: string;
|
||
|
kind: number;
|
||
|
createdAt: number;
|
||
|
relay: string;
|
||
|
event: string;
|
||
|
}
|
||
|
|
||
|
export interface NDKCacheEventTag {
|
||
|
id: string;
|
||
|
eventId: string;
|
||
|
tag: string;
|
||
|
value: string;
|
||
|
tagValue: string;
|
||
|
}
|
||
|
|
||
|
export interface NIP11 {
|
||
|
name: string;
|
||
|
description: string;
|
||
|
pubkey: string;
|
||
|
contact: string;
|
||
|
supported_nips: number[];
|
||
|
software: string;
|
||
|
version: string;
|
||
|
limitation: {
|
||
|
[key: string]: string | number | boolean;
|
||
|
};
|
||
|
relay_countries: string[];
|
||
|
language_tags: string[];
|
||
|
tags: string[];
|
||
|
posting_policy: string;
|
||
|
payments_url: string;
|
||
|
icon: string[];
|
||
|
}
|
||
|
|
||
|
export interface NIP05 {
|
||
|
names: {
|
||
|
[key: string]: string;
|
||
|
};
|
||
|
}
|