UNPKG

@orbitdb/ordered-keyvalue-db

Version:

Ordered keyvalue database type for orbit-db.

79 lines (78 loc) 3.1 kB
import { type AccessController, type Identity, type Storage, type MetaData, type DagCborEncodable, type LogEntry, Log, InternalDatabase } from "@orbitdb/core"; import type { HeliaLibp2p } from "helia"; import type { Libp2p } from "libp2p"; import type { ServiceMap } from "@libp2p/interface"; export type OrderedKeyValueDatabaseType = Awaited<ReturnType<ReturnType<typeof OrderedKeyValue>>>; declare const OrderedKeyValue: { (): <T extends ServiceMap = ServiceMap>({ ipfs, identity, address, name, access, directory, meta, headsStorage, entryStorage, indexStorage, referencesCount, syncAutomatically, onUpdate, }: { ipfs: HeliaLibp2p<Libp2p<T>>; identity?: Identity; address: string; name?: string; access?: AccessController; directory?: string; meta?: MetaData; headsStorage?: Storage; entryStorage?: Storage; indexStorage?: Storage; referencesCount?: number; syncAutomatically?: boolean; onUpdate?: (log: Log, entry: LogEntry) => void; }) => Promise<{ type: "ordered-keyvalue"; put: (key: string, value: DagCborEncodable, position?: number) => Promise<string>; set: (key: string, value: DagCborEncodable, position?: number) => Promise<string>; del: (key: string) => Promise<string>; move: (key: string, position: number) => Promise<void>; get: (key: string) => Promise<DagCborEncodable | undefined>; iterator: ({ amount, }?: { amount?: number; }) => AsyncGenerator<{ key: string; value: DagCborEncodable; position: number; hash: string; }, void, unknown>; all: () => Promise<{ key: string; value: DagCborEncodable; hash: string; }[]>; address: string; name: string; identity: Identity; meta: MetaData; close: () => Promise<void>; drop: () => Promise<void>; addOperation: (op: DagCborEncodable) => Promise<string>; log: Log; sync: import("@orbitdb/core").Sync; peers: Set<string>; events: TypedEmitter<import("@orbitdb/core").DatabaseEvents>; access: AccessController; }>; type: "ordered-keyvalue"; }; export declare const OrderedKeyValueApi: ({ database, }: { database: InternalDatabase; }) => { get: (key: string) => Promise<DagCborEncodable | undefined>; set: (key: string, value: DagCborEncodable, position?: number) => Promise<string>; put: (key: string, value: DagCborEncodable, position?: number) => Promise<string>; move: (key: string, position: number) => Promise<void>; del: (key: string) => Promise<string>; iterator: ({ amount, }?: { amount?: number; }) => AsyncGenerator<{ key: string; value: DagCborEncodable; position: number; hash: string; }, void, unknown>; all: () => Promise<{ key: string; value: DagCborEncodable; hash: string; }[]>; }; export default OrderedKeyValue;