import { Observable } from 'rxjs'; import { ProseParsedCfi } from '../../cfi'; import { Reader } from '../../reader'; import { SpineItem } from '../../spineItem/SpineItem'; type CfiLocatableResource = { cfi: string; }; export type LocatableResource = SpineItem | CfiLocatableResource; export type ConsolidatedResource = ReturnType & ProseParsedCfi & CfiLocatableResource & { itemPageIndex?: number; absolutePageIndex?: number; startOffset?: number; range?: Range | null; }; export declare const consolidate: (resource: ConsolidatedResource, reader: Reader) => Observable; type Options = { mode?: "shallow" | "load"; }; export declare class ResourcesLocator { private reader; constructor(reader: Reader); private locatorsByKey; private deregisterMemoizedStream; locate: (resource: T, options: Options) => Observable<{ resource: T; meta: ConsolidatedResource; }>; locateResource(resource: T, options?: Options): Observable<{ resource: T; meta: ConsolidatedResource; }>; locateResource(resource: T[], options?: Options): Observable<{ resource: T; meta: ConsolidatedResource; }[]>; } export {};