ebbdb42c05
Set up TypeDoc to auto-generate comprehensive API reference documentation from TypeScript source code. Changes: - Installed typedoc and typedoc-plugin-markdown (v0.2.0 plugins) - Created typedoc.json configuration with 9 entry points - Added docs:api and docs:watch npm scripts - Fixed test file imports (validateNamespace → isValidNamespace) - Updated tsconfig.json to exclude test files from compilation - Generated markdown API documentation in docs/api-reference/generated/ Generated API documentation: - 9 modules documented (lib/, hooks/, types/) - lib/crypto - 14 encryption/certificate functions - lib/controller - 5 Kubernetes API functions - lib/validators - 6 validation functions - lib/retry - Exponential backoff utilities - lib/rbac - RBAC permission checking - types - Result types, branded types, interfaces - hooks/useSealedSecretEncryption - Encryption React hook - hooks/usePermissions - RBAC React hooks - hooks/useControllerHealth - Health monitoring hook Benefits: - Auto-generated from TypeScript source (stays in sync) - Markdown format for easy integration - Type signatures and JSDoc included - Function parameters and return types documented - Links between related types and functions Phase 2 deliverables (2-3 days estimated, completed in 1 session): ✅ TypeDoc installed and configured ✅ Entry points identified for all core modules ✅ API documentation generated (9 modules, 40+ functions) ✅ npm scripts added for docs generation ✅ Test files excluded from documentation Next: Phase 3 - User tutorials and guides Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
58 lines
1.4 KiB
Markdown
58 lines
1.4 KiB
Markdown
[**Headlamp Sealed Secrets API v0.2.0**](../../../README.md)
|
|
|
|
***
|
|
|
|
[Headlamp Sealed Secrets API](../../../README.md) / [hooks/useSealedSecretEncryption](../README.md) / useSealedSecretEncryption
|
|
|
|
# Function: useSealedSecretEncryption()
|
|
|
|
> **useSealedSecretEncryption**(): `object`
|
|
|
|
Defined in: [src/hooks/useSealedSecretEncryption.ts:73](https://github.com/cpfarhood/headlamp-sealed-secrets-plugin/blob/bdf19cd3bf5a2d679b7ba949108fe9df1843c5f4/headlamp-sealed-secrets/src/hooks/useSealedSecretEncryption.ts#L73)
|
|
|
|
Custom hook for SealedSecret encryption
|
|
|
|
Provides encryption functionality with built-in validation, error handling,
|
|
and user notifications.
|
|
|
|
## Returns
|
|
|
|
`object`
|
|
|
|
Object with encrypt function and encrypting state
|
|
|
|
### encrypt()
|
|
|
|
> **encrypt**: (`request`) => [`AsyncResult`](../../../types/type-aliases/AsyncResult.md)\<[`EncryptionResult`](../interfaces/EncryptionResult.md), `string`\>
|
|
|
|
#### Parameters
|
|
|
|
##### request
|
|
|
|
[`EncryptionRequest`](../interfaces/EncryptionRequest.md)
|
|
|
|
#### Returns
|
|
|
|
[`AsyncResult`](../../../types/type-aliases/AsyncResult.md)\<[`EncryptionResult`](../interfaces/EncryptionResult.md), `string`\>
|
|
|
|
### encrypting
|
|
|
|
> **encrypting**: `boolean`
|
|
|
|
## Example
|
|
|
|
```ts
|
|
const { encrypt, encrypting } = useSealedSecretEncryption();
|
|
|
|
const result = await encrypt({
|
|
name: 'my-secret',
|
|
namespace: 'default',
|
|
scope: 'strict',
|
|
keyValues: [{ key: 'password', value: 'secret123' }]
|
|
});
|
|
|
|
if (result.ok) {
|
|
// Use result.value.sealedSecretData
|
|
}
|
|
```
|