# @types/superfine

> TypeScript definitions for superfine

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

## Install

```sh
npm install @types/superfine
pnpm add @types/superfine
yarn add @types/superfine
bun add @types/superfine
```

## 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 | 7.0.5 |
| Published | 2023-11-07 |
| First published | 2020-06-01 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 5.9 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 51381 |
| Maintainers | types |

## Links

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

## Recent versions

- 7.0.5 (latest) — 2023-11-07
- 7.0.2 (ts3.6) — 2021-07-02
- 7.0.1 (ts3.1) — 2020-07-07
- 7.0.4 — 2023-10-18
- 7.0.3 — 2023-09-25
- 7.0.0 — 2020-06-01

## README

# Installation
> `npm install --save @types/superfine`

# Summary
This package contains type definitions for superfine (https://github.com/jorgebucaran/superfine#readme).

# Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/superfine.
## [index.d.ts](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/superfine/index.d.ts)
````ts
export {};

type HtmlOrSvgElementTagNameMap =
    & HTMLElementTagNameMap
    & Pick<SVGElementTagNameMap, Exclude<keyof SVGElementTagNameMap, keyof HTMLElementTagNameMap>>;

export type Props<TTagName extends keyof HtmlOrSvgElementTagNameMap> =
    & {
        readonly [TAttributeName in keyof HtmlOrSvgElementTagNameMap[TTagName]]?:
            HtmlOrSvgElementTagNameMap[TTagName][TAttributeName];
    }
    & {
        readonly key?: number | string | undefined;
    };

export interface VNode<TTagName extends keyof HtmlOrSvgElementTagNameMap> {
    readonly name: TTagName;
}

type Child<TTagName extends keyof HtmlOrSvgElementTagNameMap> =
    | string
    | VNode<TTagName>;

type Children<TTagName extends keyof HtmlOrSvgElementTagNameMap> =
    | Child<TTagName>
    | ReadonlyArray<Child<TTagName>>;

export function h(
    tagName: "svg",
    props: Props<"svg">,
    children?: Children<keyof SVGElementTagNameMap>,
): VNode<"svg">;

export function h<TTagName extends keyof HTMLElementTagNameMap>(
    tagName: TTagName,
    props: Props<TTagName>,
    children?: Children<(keyof HTMLElementTagNameMap) | "svg">,
): VNode<TTagName>;

export function h<TTagName extends keyof SVGElementTagNameMap>(
    tagName: TTagName,
    props: Props<TTagName>,
    children?: Children<keyof SVGElementTagNameMap>,
): VNode<TTagName>;

export function patch<TTagName extends keyof HtmlOrSvgElementTagNameMap>(
    rootElement: HtmlOrSvgElementTagNameMap[TTagName],
    vNode: VNode<TTagName>,
): void;

declare global {
    namespace JSX {
        interface Element extends VNode<keyof HtmlOrSvgElementTagNameMap> {}
        type IntrinsicElements = {
            readonly [TTagName in keyof HtmlOrSvgElementTagNameMap]: Props<TTagName>;
        };
    }
}

````

### Additional Details
 * Last updated: Tue, 07 Nov 2023 15:11:36 GMT
 * Dependencies: none

# Credits
These definitions were written by [jameswilddev](https://github.com/jameswilddev).

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