import type { StoreKeyMethod } from './StoreKeyMethod'; import type { StoreHandle } from '../crypto'; import { OpenSession } from './OpenSession'; import { Scan } from './Scan'; export declare class Store { private _handle; private _opener?; private _uri; constructor({ handle, uri }: { handle: StoreHandle; uri: string; }); get handle(): StoreHandle; static generateRawKey(seed?: Uint8Array): string; get uri(): string; createProfile(name?: string): Promise; getDefaultProfile(): Promise; setDefaultProfile(name: string): Promise; listProfiles(): Promise; removeProfile(name: string): Promise; rekey({ keyMethod, passKey }: { keyMethod?: StoreKeyMethod; passKey: string; }): Promise; static provision({ uri, recreate, keyMethod, passKey, profile, }: { uri: string; keyMethod?: StoreKeyMethod; passKey?: string; profile?: string; recreate: boolean; }): Promise; static open({ uri, keyMethod, passKey, profile, }: { uri: string; keyMethod?: StoreKeyMethod; passKey?: string; profile?: string; }): Promise; close(remove?: boolean): Promise; static remove(uri: string): Promise; session(profile?: string): OpenSession; transaction(profile?: string): OpenSession; openSession(isTransaction?: boolean): Promise; scan(options: { category: string; tagFilter?: Record; offset?: number; limit?: number; profile?: string; }): Scan; copyTo({ uri, keyMethod, passKey, recreate, }: { uri: string; keyMethod?: StoreKeyMethod; passKey?: string; recreate: boolean; }): Promise; }