aboutsummaryrefslogblamecommitdiffhomepage
path: root/shared/models/activitypub/objects/common-objects.ts
blob: 118a4f43dafd6728bdcff98916f391c4d1f7bb31 (plain) (tree)
1
2
3
4
5
6
7
8





                                           

                             










                                     
                                      
              


                                                                         
              
                

              
 
 




                               


                                                                                              





                  


                                                                           


                



                                          
export interface ActivityIdentifierObject {
  identifier: string
  name: string
}

export interface ActivityTagObject {
  type: 'Hashtag' | 'Mention'
  href?: string
  name: string
}

export interface ActivityIconObject {
  type: 'Image'
  url: string
  mediaType: 'image/jpeg'
  width: number
  height: number
}

export type ActivityVideoUrlObject = {
  type: 'Link'
  // TODO: remove mimeType (backward compatibility, introduced in v1.1.0)
  mimeType?: 'video/mp4' | 'video/webm' | 'video/ogg'
  mediaType: 'video/mp4' | 'video/webm' | 'video/ogg'
  href: string
  height: number
  size: number
  fps: number
}

export type ActivityUrlObject =
  ActivityVideoUrlObject
  |
  {
    type: 'Link'
    // TODO: remove mimeType (backward compatibility, introduced in v1.1.0)
    mimeType?: 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet'
    mediaType: 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet'
    href: string
    height: number
  }
  |
  {
    type: 'Link'
    // TODO: remove mimeType (backward compatibility, introduced in v1.1.0)
    mimeType?: 'text/html'
    mediaType: 'text/html'
    href: string
  }

export interface ActivityPubAttributedTo {
  type: 'Group' | 'Person'
  id: string
}