package goap type LitepubCapabilitiesData struct { Next BaseApChain Capabilities []map[string]any // I have no idea what the data inside there looks like } func (capabilitiesdata *LitepubCapabilitiesData) GetSelfOrBase() (BaseApChain, bool) { return capabilitiesdata.Next, true } func (capabilitiesdata *LitepubCapabilitiesData) MarshalToMap() map[string]any { return appendWithKey( capabilitiesdata.Next.MarshalToMap(), KEY_LITEPUB_CAPABILITIES, capabilitiesdata.Capabilities, ) } func ParseLitepubCapabilitiesData(raw map[string]any, next BaseApChain) (BaseApChain, error) { rawData, ok := raw[KEY_LITEPUB_CAPABILITIES] if !ok { return nil, NoRequiredFieldError{KEY_LITEPUB_CAPABILITIES} } data, ok := rawData.([]map[string]any) if !ok { return nil, BadFieldValueError[[]map[string]any]{KEY_LITEPUB_CAPABILITIES, rawData, data} } return &LitepubCapabilitiesData{ Next: next, Capabilities: data, }, nil } func AppendLitepubCapabilitiesData(base BaseApChain, rawData ...map[string]any) BaseApChain { return &LitepubCapabilitiesData{base, rawData} } type LitepubOauthRegistrationEndpointData struct { FullIdType } func (oauthregistrationendpointdata *LitepubOauthRegistrationEndpointData) GetSelfOrBase() (BaseApChain, bool) { return oauthregistrationendpointdata.FullIdType.GetSelfOrBase() } func (oauthregistrationendpointdata *LitepubOauthRegistrationEndpointData) MarshalToMap() map[string]any { return oauthregistrationendpointdata.FullIdType.MarshalToMapWithName( KEY_ACTIVITYSTREAMS_OAUTHAUTHORIZATION, ) } func ParseLitepubOauthRegistrationEndpointData( raw map[string]any, next BaseApChain, ) (BaseApChain, error) { id, err := ParseIdTypeWithName(raw, next, KEY_LITEPUB_OAUTHREGISTRATION) if err != nil { return nil, err } return &LitepubOauthRegistrationEndpointData{FullIdType: *id}, nil } func AppendLitepubOauthRegistrationEndpointsData(base BaseApChain, id string) BaseApChain { return &LitepubOauthRegistrationEndpointData{FullIdType{base, id}} }