activitypub-actor.ts 845 B

12345678910111213141516171819202122232425262728293031323334353637
  1. import { ActivityIconObject, ActivityPubAttributedTo } from './objects/common-objects'
  2. export type ActivityPubActorType = 'Person' | 'Application' | 'Group' | 'Service' | 'Organization'
  3. export interface ActivityPubActor {
  4. '@context': any[]
  5. type: ActivityPubActorType
  6. id: string
  7. following: string
  8. followers: string
  9. playlists?: string
  10. inbox: string
  11. outbox: string
  12. preferredUsername: string
  13. url: string
  14. name: string
  15. endpoints: {
  16. sharedInbox: string
  17. }
  18. summary: string
  19. attributedTo: ActivityPubAttributedTo[]
  20. support?: string
  21. publicKey: {
  22. id: string
  23. owner: string
  24. publicKeyPem: string
  25. }
  26. image?: ActivityIconObject | ActivityIconObject[]
  27. icon?: ActivityIconObject | ActivityIconObject[]
  28. // TODO: migrate to `icon`, introduced in 4.2
  29. icons?: ActivityIconObject[]
  30. published?: string
  31. }