package utils func TypedSliceToInterfaceSlice[T any](s []T) []interface{} { is := make([]interface{}, 0, len(s)) for _, t := range s { is = append(is, t) } return is } func InterfaceSliceToTypedSlice[T any](s []interface{}) []T { ts := make([]T, 0, len(s)) for _, t := range s { ts = append(ts, t.(T)) } return ts }