27 lines
1.8 KiB
Go
27 lines
1.8 KiB
Go
package ap
|
|
|
|
import (
|
|
"net/url"
|
|
"time"
|
|
)
|
|
|
|
type Question struct {
|
|
Context map[string]any `json:"@context,omitempty"` // Lots of something. Not included if note is embedded as object in another object
|
|
ID url.URL `json:"id"` // Url to this object
|
|
Type string `json:"type"` // Should always be "Question"
|
|
AttributedTo url.URL `json:"attributedTo"` // Creator of this object
|
|
Content string `json:"content"` // Preformated text content
|
|
MkContent string `json:"_misskey_content"` // Misskey version of the content
|
|
Source RawNoteContent `json:"source"` // Raw version of the content
|
|
Published time.Time `json:"published"` // When this object was published
|
|
To []url.URL `json:"to"` // Who to send this to
|
|
Cc []url.URL `json:"cc"` // More targets to send to
|
|
InReplyTo *url.URL `json:"inReplyTo"` // Object this post replies to
|
|
Attachment []map[string]string `json:"attachment"` // File attachments - TODO: Move to concrete type
|
|
Sensitive bool `json:"sensitive"` // Whether this post has a content warning
|
|
Summary *string `json:"summary"` // Summary of a post (also known as content warning)
|
|
Tag []Tag `json:"tag"` // Hashtags
|
|
EndTime *time.Time `json:"endTime"` // Timestamp of when the question ends
|
|
OneOf []QuestionEntry `json:"oneOf,omitempty"` // All available options to vote for. Used if single choice vote
|
|
AnyOf []QuestionEntry `json:"anyOf,omitempty"` // All available options to vote for. Used if multiple choice vote
|
|
}
|