declare class Node {
    list: Yallist | null;
    value: any;
    prev: Node | null;
    next: Node | null;
    constructor(value: any, prev: Node | null, next: Node | null, list: Yallist);
}
export default class Yallist {
    static Node: typeof Node;
    static create: typeof Yallist;
    tail: Node | null;
    head: Node | null;
    length: number;
    constructor(...args: any[]);
    removeNode(node: Node): Node | null;
    unshiftNode(node: Node): void;
    pushNode(node: Node): void;
    push(...args: any[]): number;
    unshift(...args: any[]): number;
    pop(): any;
    shift(): any;
    forEach(fn: any, thisp: any): void;
    forEachReverse(fn: any, thisp: any): void;
    get(n: any): any;
    getReverse(n: any): any;
    map(fn: any, thisp: any): Yallist;
    mapReverse(fn: any, thisp: any): Yallist;
    reduce(...args: any[]): any;
    reduceReverse(...args: any[]): any;
    toArray(): any[];
    toArrayReverse(): any[];
    slice(from: any, to: any): Yallist;
    sliceReverse(from: any, to: any): Yallist;
    splice(start: any, deleteCount: any, ...nodes: any[]): any[];
    reverse(): this;
}
export {};
