subscription.ts 595 B

123456789101112131415161718192021
  1. import type { Ref } from './common';
  2. import type { IPage } from './page';
  3. import type { IUser } from './user';
  4. export const SubscriptionStatusType = {
  5. SUBSCRIBE: 'SUBSCRIBE',
  6. UNSUBSCRIBE: 'UNSUBSCRIBE',
  7. } as const;
  8. export const AllSubscriptionStatusType = Object.values(SubscriptionStatusType);
  9. export type SubscriptionStatusType = typeof SubscriptionStatusType[keyof typeof SubscriptionStatusType];
  10. export interface ISubscription {
  11. user: Ref<IUser>
  12. targetModel: string
  13. target: Ref<IPage>
  14. status: string
  15. createdAt: Date
  16. isSubscribing(): boolean
  17. isUnsubscribing(): boolean
  18. }