| // Copyright 2022 The Go Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| package a |
| |
| type Interaction[DataT InteractionDataConstraint] struct { |
| } |
| |
| type InteractionDataConstraint interface { |
| []byte | |
| UserCommandInteractionData |
| } |
| |
| type UserCommandInteractionData struct { |
| resolvedInteractionWithOptions |
| } |
| |
| type resolvedInteractionWithOptions struct { |
| Resolved Resolved `json:"resolved,omitempty"` |
| } |
| |
| type Resolved struct { |
| Users ResolvedData[User] `json:"users,omitempty"` |
| } |
| |
| type ResolvedData[T ResolvedDataConstraint] map[uint64]T |
| |
| type ResolvedDataConstraint interface { |
| User | Message |
| } |
| |
| type User struct{} |
| |
| type Message struct { |
| Interaction *Interaction[[]byte] `json:"interaction,omitempty"` |
| } |