# `Gemini.GovernedAuthority`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L1)

Authority-materialized Gemini inputs for governed execution.

Standalone GeminiEx usage keeps using its normal env, app config, ADC, native
Google credential discovery, and request/session overrides. Governed usage
passes this value after an external authority has selected the credential,
lease, target, redaction policy, base URL, and materialized credential data
for one bounded effect.

# `header_map`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L12)

```elixir
@type header_map() :: %{optional(String.t()) =&gt; String.t()}
```

# `query_params`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L13)

```elixir
@type query_params() :: [{String.t(), String.t()}]
```

# `t`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L15)

```elixir
@type t() :: %Gemini.GovernedAuthority{
  base_url: String.t(),
  credential_headers: header_map(),
  credential_lease_ref: String.t(),
  credential_query_params: query_params(),
  credential_ref: String.t(),
  endpoint_ref: String.t(),
  headers: header_map(),
  model_account_ref: String.t(),
  operation_policy_ref: String.t(),
  provider_account_ref: String.t(),
  provider_ref: String.t(),
  redaction_ref: String.t() | nil,
  target_ref: String.t(),
  websocket_path: String.t() | nil
}
```

# `credential_materialized?`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L114)

```elixir
@spec credential_materialized?(t()) :: boolean()
```

# `headers`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L90)

```elixir
@spec headers(t()) :: [{String.t(), String.t()}]
```

# `new!`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L59)

```elixir
@spec new!(t() | map() | keyword()) :: t()
```

# `refs`
[🔗](https://github.com/nshkrdotcom/gemini_ex/blob/v0.14.0/lib/gemini/governed_authority.ex#L97)

```elixir
@spec refs(t()) :: map()
```

---

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