// Code generated by ndpgen. DO NOT EDIT.//// This file provides stub implementations for non-WASM platforms.// It allows Go plugins to compile and run tests outside of WASM,// but the actual functionality is only available in WASM builds.////go:build !wasip1package {{.Package}}{{- if .Capability.ImportsSharedTypes}}import "github.com/navidrome/navidrome/plugins/pdk/go/types"{{- end}}{{- /* Generate deprecated shared-type aliases */ -}}{{- range .Capability.SharedAliases}}{{- if .Doc}}{{formatDoc .Doc}}{{- end}}type {{.Name}} = {{.Target}}{{- end}}{{- /* Generate type alias definitions */ -}}{{- range .Capability.TypeAliases}}{{- if .Doc}}{{formatDoc .Doc}}{{- end}}type {{.Name}} {{.Type}}{{- end}}{{- /* Generate const definitions */ -}}{{- range .Capability.Consts}}{{- if .Values}}const ({{- $type := .Type}}{{- range $i, $v := .Values}}{{- if $v.Doc}}{{formatDoc $v.Doc | indent 1}}{{- end}}{{- if $type}}{{$v.Name}} {{$type}} = {{$v.Value}}{{- else}}{{$v.Name}} = {{$v.Value}}{{- end}}{{- end}}){{- end}}{{- end}}{{- /* Generate Error() methods for string type aliases with const values (implements error interface) */ -}}{{- $consts := .Capability.Consts}}{{- range .Capability.TypeAliases}}{{- if eq .Type "string"}}{{- $typeName := .Name}}{{- range $consts}}{{- if eq .Type $typeName}}// Error implements the error interface for {{$typeName}}.func (e {{$typeName}}) Error() string { return string(e) }{{- end}}{{- end}}{{- end}}{{- end}}{{- /* Generate struct definitions */ -}}{{- range .Capability.Structs}}{{- if .Doc}}{{formatDoc .Doc}}{{- else}}// {{.Name}} represents the {{.Name}} data structure.{{- end}}type {{.Name}} struct {{{- range .Fields}}{{- if .Doc}}{{formatDoc .Doc | indent 1}}{{- end}}{{.Name}} {{.Type}} `json:"{{.JSONTag}}{{if .OmitEmpty}},omitempty{{end}}"`{{- end}}}{{- end}}{{- /* Generate main interface based on required flag */ -}}{{if .Capability.Required}}// {{agentName .Capability}} requires all methods to be implemented.{{- if .Capability.Doc}}{{formatDoc .Capability.Doc}}{{- end}}type {{agentName .Capability}} interface {{{- range .Capability.Methods}}// {{.Name}}{{if .Doc}} - {{.Doc}}{{end}}{{- if and .HasInput .HasOutput}}{{.Name}}({{.Input.Type}}) ({{.Output.Type}}, error){{- else if .HasInput}}{{.Name}}({{.Input.Type}}) error{{- else if .HasOutput}}{{.Name}}() ({{.Output.Type}}, error){{- else}}{{.Name}}() error{{- end}}{{- end}}}{{- else}}// {{agentName .Capability}} is the marker interface for {{.Package}} plugins.// Implement one or more of the provider interfaces below.{{- if .Capability.Doc}}{{formatDoc .Capability.Doc}}{{- end}}type {{agentName .Capability}} interface{}{{- end}}{{- /* Generate optional provider interfaces for non-required capabilities */ -}}{{- if not .Capability.Required}}{{- range .Capability.Methods}}// {{providerInterface .}} provides the {{.Name}} function.type {{providerInterface .}} interface {{{- if and .HasInput .HasOutput}}{{.Name}}({{.Input.Type}}) ({{.Output.Type}}, error){{- else if .HasInput}}{{.Name}}({{.Input.Type}}) error{{- else if .HasOutput}}{{.Name}}() ({{.Output.Type}}, error){{- else}}{{.Name}}() error{{- end}}}{{- end}}{{- end}}// NotImplementedCode is the standard return code for unimplemented functions.const NotImplementedCode int32 = -2// Register is a no-op on non-WASM platforms.// This stub allows code to compile outside of WASM.{{- if .Capability.Required}}func Register(_ {{agentName .Capability}}) {}{{- else}}func Register(_ {{agentName .Capability}}) {}{{- end}}