import Panel from "./Panel";
import { FlickingOptions } from "../types";
declare class PanelManager {
    private cameraElement;
    private options;
    private panels;
    private clones;
    private range;
    private length;
    private lastIndex;
    private cloneCount;
    constructor(cameraElement: HTMLElement, options: FlickingOptions);
    firstPanel(): Panel | undefined;
    lastPanel(): Panel | undefined;
    allPanels(): ReadonlyArray<Panel>;
    originalPanels(): ReadonlyArray<Panel>;
    clonedPanels(): ReadonlyArray<Panel[]>;
    replacePanels(newPanels: Panel[], newClones: Panel[][]): void;
    has(index: number): boolean;
    get(index: number): Panel | undefined;
    getPanelCount(): number;
    getLastIndex(): number;
    getRange(): Readonly<{
        min: number;
        max: number;
    }>;
    getCloneCount(): number;
    setLastIndex(lastIndex: number): void;
    setCloneCount(cloneCount: number): void;
    insert(index: number, newPanels: Panel[]): number;
    replace(index: number, newPanels: Panel[]): Panel[];
    remove(index: number, deleteCount?: number): Panel[];
    chainAllPanels(): void;
    insertClones(cloneIndex: number, index: number, clonedPanels: Panel[], deleteCount?: number): void;
    removeClonesAfter(cloneIndex: number): void;
    findPanelOf(element: HTMLElement): Panel | undefined;
    findFirstPanelFrom(index: number): Panel | undefined;
    private addNewClones;
    private updateIndex;
    private insertNewPanels;
    private shouldRender;
}
export default PanelManager;
