# @types/sparse-bitfield

> TypeScript definitions for sparse-bitfield

Latest version **3.0.4** (published 2023-11-07) · MIT license · 0 weekly downloads

## Install

```sh
npm install @types/sparse-bitfield
pnpm add @types/sparse-bitfield
yarn add @types/sparse-bitfield
bun add @types/sparse-bitfield
```

## Health

**Score 45/100 (D)** — status: abandoned.

Positive: has types; no vulnerabilities; high maintenance score; popular repo; extremely popular.

Warnings: low downloads; no esm support.

Negative: abandoned.

## Facts

| | |
|---|---|
| Version | 3.0.4 |
| Published | 2023-11-07 |
| First published | 2018-12-31 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 2 |
| Unpacked size | 6.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 51449 |
| Maintainers | types |

## Links

- npm: https://www.npmjs.com/package/@types/sparse-bitfield
- Repository: https://github.com/DefinitelyTyped/DefinitelyTyped
- Homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/sparse-bitfield
- npm.io page: https://npm.io/package/@types/sparse-bitfield

## Dependencies (2)

- [@types/node](https://npm.io/package/@types/node.md) *
- [@types/memory-pager](https://npm.io/package/@types/memory-pager.md) *

## Recent versions

- 3.0.4 (latest) — 2023-11-07
- 3.0.1 (ts3.6) — 2021-07-06
- 3.0.0 (ts2.0) — 2018-12-31
- 3.0.3 — 2023-10-18
- 3.0.2 — 2023-09-25

## README

# Installation
> `npm install --save @types/sparse-bitfield`

# Summary
This package contains type definitions for sparse-bitfield (https://github.com/mafintosh/sparse-bitfield).

# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/sparse-bitfield.
## [index.d.ts](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/sparse-bitfield/index.d.ts)
````ts
/// <reference types="node" />

import { PagerInstance } from "memory-pager";

export = BitField;

declare const BitField: BitField;

interface BitField {
    (bufferOrOptions?: BitField.Options | Buffer): BitField.BitFieldInstance;
    new(bufferOrOptions?: BitField.Options | Buffer): BitField.BitFieldInstance;
}

declare namespace BitField {
    interface Options {
        /**
         * @default 0
         */
        pageOffset?: number | undefined;
        /**
         * How big should the partial buffers be.
         * @default 1024
         */
        pageSize?: number | undefined;
        /**
         * A pre-configured Pager instance.
         */
        pages?: PagerInstance | undefined;
        /**
         * An existing bitfield.
         */
        buffer?: Buffer | undefined;
        /**
         * Track when pages are being updated in the pager.
         * @default false
         */
        trackUpdates?: boolean | undefined;
    }

    interface BitFieldInstance {
        /**
         * A `memory-pager` instance that is managing the underlying memory.
         * If you set `trackUpdates` to `true` in the constructor you can use `.lastUpdate()` on this instance
         * to get the last updated memory page.
         */
        readonly pages: PagerInstance;

        /**
         * Get the value of a bit.
         */
        get(index: number): boolean;
        /**
         * Get the value of a byte.
         */
        getByte(index: number): number;
        /**
         * Set a bit to true or false.
         */
        set(index: number, value: boolean): boolean;
        /**
         * Set a byte to a new value.
         */
        setByte(index: number, byte: number): boolean;
        /**
         * Get a single buffer representing the entire bitfield.
         */
        toBuffer(): Buffer;
    }
}

````

### Additional Details
 * Last updated: Tue, 07 Nov 2023 15:11:36 GMT
 * Dependencies: [@types/memory-pager](https://npmjs.com/package/@types/memory-pager), [@types/node](https://npmjs.com/package/@types/node)

# Credits
These definitions were written by [BendingBender](https://github.com/BendingBender).

---
_Source: https://npm.io/package/@types/sparse-bitfield · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
