ClaudeCodeSDK.Auth.TokenStore behaviour (claude_code_sdk v0.2.2)
View SourcePersistent token storage for authentication.
Supports multiple storage backends:
- File-based (default): ~/.claude_sdk/token.json
- Application environment: :claude_code_sdk, :auth_token
- Custom: User-provided module implementing this behavior
Summary
Types
@type token_data() :: %{ token: String.t(), expiry: DateTime.t() | nil, provider: atom() }
Callbacks
@callback clear() :: :ok
@callback load() :: {:ok, token_data()} | {:error, :not_found | term()}
@callback save(token_data()) :: :ok | {:error, term()}
Functions
@spec clear() :: :ok
Clears stored token data.
@spec load() :: {:ok, token_data()} | {:error, :not_found | term()}
Loads token data from storage.
@spec save(token_data()) :: :ok | {:error, term()}
Saves token data to storage.