import type { Tileset } from './tileset';
import type { Tile } from './tile';
import type { FrameState, TileRequestOrder } from './types';
export type TileRequestSchedulerOptions = {
    onTileSkip?: (tile: Tile) => void;
    onTileLoad?: (tile: Tile) => void;
    onTileError?: (tile: Tile, error: Error) => void;
};
export declare class TileRequestScheduler {
    private tileset;
    private options;
    private activeRequests;
    private requestQueue;
    constructor(tileset: Tileset, options: TileRequestSchedulerOptions);
    reset(): void;
    update(requestTiles: Tile[], order: TileRequestOrder, frameState: FrameState): void;
}
