import { ReactiveObject, ReactiveSetupAdapter } from "@cfcs/core";
import Flicking from "../Flicking";
export declare type FlickingReactiveObject = ReactiveObject<FlickingReactiveState & FlickingReactiveMethod>;
export interface FlickingReactiveState {
    isReachStart: boolean;
    isReachEnd: boolean;
    totalPanelCount: number;
    currentPanelIndex: number;
    progress: number;
    indexProgress: number;
}
export interface FlickingReactiveMethod {
    moveTo: (i: number) => Promise<void>;
}
export interface FlickingReactiveData {
    flicking?: Flicking;
    options?: FlickingReactiveAPIOptions;
}
export interface FlickingReactiveAPIOptions {
    defaultIndex?: number;
    totalPanelCount?: number;
}
declare const flickingReactiveAPIAdapter: ReactiveSetupAdapter<FlickingReactiveObject, FlickingReactiveState, "moveTo", FlickingReactiveData>;
declare const connectFlickingReactiveAPI: (flicking: Flicking, options?: FlickingReactiveAPIOptions) => ReactiveObject<FlickingReactiveState & FlickingReactiveMethod>;
export { flickingReactiveAPIAdapter, connectFlickingReactiveAPI };
