@amityco/ts-sdk-react-native
Version:
Amity Social Cloud Typescript SDK
81 lines • 2.96 kB
TypeScript
export {};
declare global {
namespace Amity {
const enum TrayItemCategoryType {
POST_MENTION = "mention_in_post",
COMMENT_MENTION = "mention_in_comment",
REPLY_MENTION = "mention_in_reply",
POLL_MENTION = "mention_in_poll",
POST_REACT = "reaction_on_post",
COMMENT_REACT = "reaction_on_comment",
REPLY_REACT = "reaction_on_reply",
RESPONSE_JOIN_REQUEST = "respond_on_join_request",
FOLLOW_USER = "follow"
}
const enum TrayAction {
POST = "post",
POLL = "poll",
COMMENT = "comment",
REACTION = "reaction",
MENTION = "mention",
REPLY = "reply",
JOIN_REQUEST = "join_request"
}
type RawNotificationTrayItem = {
_id: string;
lastSeenAt: Amity.timestamp;
lastOccurredAt: Amity.timestamp;
actors: {
_id: string;
publicId: string;
lastActedAt: Amity.timestamp;
}[];
actorsCount: number;
trayItemCategory?: TrayItemCategoryType;
targetId: string;
targetType: string;
referenceId?: string;
referenceType?: string;
actionType: TrayAction;
actionReferenceId?: string;
parentId?: string;
text: string;
templatedText: string;
daySegment: Amity.timestamp;
};
type InternalNotificationTrayItem = RawNotificationTrayItem;
type QueryNotificationTrayItem = {
token?: Amity.Token;
limit?: Amity.PageLimit['limit'];
};
type NotificationTrayItemLiveCollection = Amity.LiveCollectionParams<Omit<QueryNotificationTrayItem, 'limit'>>;
type NotificationTrayItemLiveCollectionCache = Amity.LiveCollectionCache<Amity.InternalNotificationTrayItem['_id'], Pick<QueryNotificationTrayItem, 'limit'>>;
type NotificationTrayItem = Amity.InternalNotificationTrayItem & {
isSeen: boolean;
isRecent: boolean;
users: Amity.User[];
};
type RawNotificationTraySeen = {
lastTraySeenAt: Amity.timestamp;
lastTrayOccurredAt: Amity.timestamp;
};
type RawNotificationTraySeenUpdated = {
lastTraySeenAt: Amity.timestamp;
};
type InternalNotificationTraySeen = RawNotificationTraySeen & {
userId: string;
isSeen: boolean;
};
type NotificationTraySeen = RawNotificationTraySeen & {
isSeen: boolean;
};
type RawNotificationItemSeen = {
lastSeenAt: Amity.timestamp;
};
type QueryNotificationItemSeen = {
id: string;
lastSeenAt: Amity.timestamp;
};
}
}
//# sourceMappingURL=notification.d.ts.map