# `Kinda.Wrapper.Function`
[🔗](https://github.com/beaver-lodge/kinda/blob/main/lib/wrapper/function.ex#L1)

Normalized function declaration extracted from a wrapper surface.

# `t`

```elixir
@type t() :: %Kinda.Wrapper.Function{
  arity: non_neg_integer(),
  doc: String.t() | nil,
  name: String.t(),
  param_ctypes: [Kinda.Wrapper.CType.t() | nil],
  params: [String.t()],
  return_ctype: Kinda.Wrapper.CType.t() | nil
}
```

# `typespec_params`

```elixir
@spec typespec_params(t(), [atom()], (Kinda.Wrapper.CType.t() | nil -&gt;
                                  Kinda.CodeGen.TypeSpecRef.t())) ::
  [Kinda.CodeGen.TypeSpecRef.t()]
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
