blast-client
Version:
blast client
55 lines (53 loc) • 1.4 kB
text/typescript
type SubscribeFunctionType = (sub: PushSubscriptionJSON, userAgent: string, userId: string) => Promise<{
success: boolean;
}>;
type UserProfileType = {
userId: string;
username: string;
name: string;
verifiedBadge: "none" | "blue" | "gold";
profile: {
url: string;
};
};
type DialogNotificationType = {
dialogId?: string;
showNotification: boolean;
title: string;
content: string;
sender_profile: UserProfileType;
send_for: string[];
gets: {
subscribeId: string;
date: Date;
}[];
clicks: {
subscribeId: string;
type: "confirm" | "dismiss" | "post_message";
content: string;
date: Date;
}[];
medias: {
url: string;
type: string;
}[];
buttons: {
content: string;
event: "confirm" | "dismiss" | "post_message";
}[];
};
type DialogType = {
dialogId?: string;
title: string;
content: string;
buttons: DialogNotificationType["buttons"];
};
type DialogComponentsProps = {
dialogs: DialogType[];
addGets: (dialogId: string, userId: string) => Promise<void>;
};
type DialogProps = {
dialogs: DialogType[];
addGets: (dialogId: string, userId: string) => Promise<void>;
};
export type { DialogComponentsProps, DialogNotificationType, DialogProps, DialogType, SubscribeFunctionType, UserProfileType };