import { ArrayModel, MapModel, SetModel } from "vasille";
export declare class ContextArray<T> extends ArrayModel<T> {
    private ctx;
    constructor(data?: Array<T> | number);
    fill(value: T, start?: number, end?: number): this;
    pop(): T | undefined;
    push(...items: Array<T>): number;
    shift(): T | undefined;
    splice(start: number, deleteCount?: number | undefined, ...items: T[]): ArrayModel<T>;
    unshift(...items: T[]): number;
    replace(at: number, with_: T): this;
    destroy(): void;
}
export declare class ContextMap<K, T> extends MapModel<K, T> {
    private ctx;
    constructor(map?: [K, T][]);
    clear(): void;
    delete(key: K): boolean;
    set(key: K, value: T): this;
    destroy(): void;
}
export declare class ContextSet<T> extends SetModel<T> {
    private ctx;
    private real;
    constructor(set?: T[]);
    add(value: T): this;
    has(value: T): boolean;
    clear(): void;
    delete(value: T): boolean;
    destroy(): void;
}
