hapijs / hapijs/b64

Add typings

Open
#42 0 comments 0 reactions 0 assignees View on GitHub
feature
Dominant language
JavaScript
Stars
40
Forks
14
PR merge metrics
No merged PRs in 30d

Description

I am currently using the following to type `@hapi/b64`. It would be nice if this module exported its own types. I d'ont have the time or resources to make a PR. Sorry about that.

```ts
declare module '@hapi/b64' {
import { Transform } from 'node:stream'

export class Decoder extends Transform {
constructor()
}
export class Encoder extends Transform {
constructor()
}

/**
* @param buffer - A buffer containing the base64 encoded string
* @returns A buffer containing the decoded bytes
*/
export function decode(buffer: Buffer): Buffer

/**
* @params buffer - Buffer of bytes to encode
* @returns A buffer containing a base64 encoded string
*/
export function encode(buffer: Buffer): Buffer

/**
* Base64url (RFC 4648) encode
*/
export function base64urlEncode(value: string | Buffer, encoding?: BufferEncoding): string

/**
* Base64url (RFC 4648) decode
* @param encoding - defaults to 'binary'
*/
export function base64urlDecode(value: string, encoding: 'buffer'): Buffer
export function base64urlDecode(value: string, encoding?: BufferEncoding): string
}
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.