///
import { DatabaseKeyRange } from './types';
/**
* In non relational KV stores, to emulate 'startswith' you often need
* to use greaterThan and lessThan using the prefix + a glyph marker. To
* search for "App" in a table containing "Apple", "Application", and "Boat"
* you would query "gte('App') && lte('App' + 'ff')" Which would return
* 'Apple' and 'Application'
*/
export declare function getPrefixKeyRange(prefix: Buffer): {
gte: Buffer;
lt: Buffer;
};
export declare function getPrefixesKeyRange(start: Readonly, end: Readonly): {
gte: Buffer;
lt: Buffer;
};
/**
* Used to prepend a prefix to each key range condition
*
* Useful when you want to limit a range even further to a prefix
*/
export declare function addPrefixToRange(range: DatabaseKeyRange, prefix: Buffer): DatabaseKeyRange;
/**
* Return true if the buffer matches the key ranges
*/
declare function isInRange(buffer: Buffer, range: DatabaseKeyRange): boolean;
declare function hasPrefix(buffer: Buffer, prefix: Buffer): boolean;
export declare const StorageUtils: {
addPrefixToRange: typeof addPrefixToRange;
getPrefixKeyRange: typeof getPrefixKeyRange;
getPrefixesKeyRange: typeof getPrefixesKeyRange;
hasPrefix: typeof hasPrefix;
isInRange: typeof isInRange;
};
export {};
//# sourceMappingURL=utils.d.ts.map