You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
905 B
31 lines
905 B
// Package pointers is a set of basic nip-19 data types for generating bech32 |
|
// encoded nostr entities. |
|
package pointers |
|
|
|
import ( |
|
"next.orly.dev/pkg/encoders/kind" |
|
) |
|
|
|
// Profile pointer is a combination of pubkey and relay list. |
|
type Profile struct { |
|
PublicKey []byte `json:"pubkey"` |
|
Relays [][]byte `json:"relays,omitempty"` |
|
} |
|
|
|
// Event pointer is the combination of an event ID, relay hints, author, pubkey, |
|
// and kind. |
|
type Event struct { |
|
ID []byte `json:"id"` |
|
Relays [][]byte `json:"relays,omitempty"` |
|
Author []byte `json:"author,omitempty"` |
|
Kind *kind.K `json:"kind,omitempty"` |
|
} |
|
|
|
// Entity is the combination of a pubkey, kind, arbitrary identifier, and relay |
|
// hints. |
|
type Entity struct { |
|
PublicKey []byte `json:"pubkey"` |
|
Kind *kind.K `json:"kind,omitempty"` |
|
Identifier []byte `json:"identifier,omitempty"` |
|
Relays [][]byte `json:"relays,omitempty"` |
|
}
|
|
|