/**
 * Facilitates prioritized queueing and loading of individual texture tiles
 */
export class VirtualTextureTileLoader {
    /**
     *
     * @param {function(mip:number, x:number, y:number):string} builder
     */
    set file_name_builder(builder: (arg0: number, arg1: number, arg2: number) => string);
    /**
     *
     * @return {function(number, number, number): string}
     */
    get file_name_builder(): (arg0: number, arg1: number, arg2: number) => string;
    set path(v: any);
    /**
     * When queue gets larger than this, we start discarding elements
     * @type {number}
     */
    queue_limit: number;
    set asset_manager(v: any);
    /**
     * @readonly
     */
    readonly on: {
        /**
         * @type {Signal<VirtualTextureTile>}
         */
        loaded: Signal<VirtualTextureTile>;
    };
    /**
     *
     * @param {number} fingerprint
     */
    enqueue(fingerprint: number): boolean;
    /**
     *
     * @param {number} fingerprint
     * @returns {boolean}
     */
    is_queued(fingerprint: number): boolean;
    /**
     *
     * @param {VirtualTextureUsage} usage
     */
    update_usage(usage: VirtualTextureUsage): void;
    #private;
}
import Signal from "../../../../core/events/signal/Signal.js";
import { VirtualTextureTile } from "./tile/VirtualTextureTile.js";
//# sourceMappingURL=VirtualTextureTileLoader.d.ts.map