UNPKG

ip2region-ts

Version:

node-ip2region written in typescript with esm support, latest xdb

36 lines (33 loc) 1.41 kB
import { Buffer } from 'node:buffer'; declare const getStartEndPtr: unique symbol; declare const getBuffer: unique symbol; declare const openFilePromise: unique symbol; declare const defaultDbFile: string; declare class Searcher { _dbFile: string | null; _vectorIndex: Buffer | null; _buffer: Buffer | null; constructor(dbFile: string | null, vectorIndex: Buffer | null, buffer: Buffer | null); [getStartEndPtr](idx: number, fd: number, ioStatus: { ioCount: number; }): Promise<{ sPtr: number; ePtr: number; }>; [getBuffer](offset: number, length: number, fd: number, ioStatus: { ioCount: number; }): Promise<Buffer>; [openFilePromise](fileName: string): Promise<number>; search(ip: string): Promise<{ region: string | null; ioCount: number; took: number; }>; } declare function isValidIp(ip: string): boolean; declare function newWithFileOnly(dbPath: string): Searcher; declare function newWithVectorIndex(dbPath: string, vectorIndex: Buffer): Searcher; declare function newWithBuffer(buffer: Buffer): Searcher; declare function loadVectorIndexFromFile(dbPath: string): Buffer<ArrayBuffer>; declare function loadContentFromFile(dbPath: string): Buffer<ArrayBuffer>; export { defaultDbFile, isValidIp, loadContentFromFile, loadVectorIndexFromFile, newWithBuffer, newWithFileOnly, newWithVectorIndex };