I am not sure I understood the specs, but I am wondering if you are simply looking for
struct Foo{T,C,W<:AbstractArray{T,C},S<:NTuple{C,Symbol}} <: AbstractVector{T}
weights::W
support::S
end
Note
-
that parametric supertypes need parameters, eg
struct Bar <: AbstractVector endwill error,
-
structs cannot have anUnionAll/whereclause outside (what would it even mean?), sostruct Baz{T} where T endwill error.
These two are MWE for your error messages.
You may want to revisit the types chapter of the manual.