import { ParameterListContext, SolidityParserVisitor } from '../../antlr4';
import { ParameterDeclaration } from '../declaration';
export type ParameterList = ParameterDeclaration[];
export declare const ParameterList: {
    new (ctx: ParameterListContext, visitor: SolidityParserVisitor<any>): {
        [n: number]: ParameterDeclaration;
        type: "ParameterList";
        length: number;
        toString(): string;
        toLocaleString(): string;
        pop(): ParameterDeclaration | undefined;
        push(...items: ParameterDeclaration[]): number;
        concat(...items: ConcatArray<ParameterDeclaration>[]): ParameterDeclaration[];
        concat(...items: (ParameterDeclaration | ConcatArray<ParameterDeclaration>)[]): ParameterDeclaration[];
        join(separator?: string | undefined): string;
        reverse(): ParameterDeclaration[];
        shift(): ParameterDeclaration | undefined;
        slice(start?: number | undefined, end?: number | undefined): ParameterDeclaration[];
        sort(compareFn?: ((a: ParameterDeclaration, b: ParameterDeclaration) => number) | undefined): any;
        splice(start: number, deleteCount?: number | undefined): ParameterDeclaration[];
        splice(start: number, deleteCount: number, ...items: ParameterDeclaration[]): ParameterDeclaration[];
        unshift(...items: ParameterDeclaration[]): number;
        indexOf(searchElement: ParameterDeclaration, fromIndex?: number | undefined): number;
        lastIndexOf(searchElement: ParameterDeclaration, fromIndex?: number | undefined): number;
        every<S extends ParameterDeclaration>(predicate: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => value is S, thisArg?: any): this is S[];
        every(predicate: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => unknown, thisArg?: any): boolean;
        some(predicate: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => unknown, thisArg?: any): boolean;
        forEach(callbackfn: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => void, thisArg?: any): void;
        map<U>(callbackfn: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => U, thisArg?: any): U[];
        filter<S_1 extends ParameterDeclaration>(predicate: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => value is S_1, thisArg?: any): S_1[];
        filter(predicate: (value: ParameterDeclaration, index: number, array: ParameterDeclaration[]) => unknown, thisArg?: any): ParameterDeclaration[];
        reduce(callbackfn: (previousValue: ParameterDeclaration, currentValue: ParameterDeclaration, currentIndex: number, array: ParameterDeclaration[]) => ParameterDeclaration): ParameterDeclaration;
        reduce(callbackfn: (previousValue: ParameterDeclaration, currentValue: ParameterDeclaration, currentIndex: number, array: ParameterDeclaration[]) => ParameterDeclaration, initialValue: ParameterDeclaration): ParameterDeclaration;
        reduce<U_1>(callbackfn: (previousValue: U_1, currentValue: ParameterDeclaration, currentIndex: number, array: ParameterDeclaration[]) => U_1, initialValue: U_1): U_1;
        reduceRight(callbackfn: (previousValue: ParameterDeclaration, currentValue: ParameterDeclaration, currentIndex: number, array: ParameterDeclaration[]) => ParameterDeclaration): ParameterDeclaration;
        reduceRight(callbackfn: (previousValue: ParameterDeclaration, currentValue: ParameterDeclaration, currentIndex: number, array: ParameterDeclaration[]) => ParameterDeclaration, initialValue: ParameterDeclaration): ParameterDeclaration;
        reduceRight<U_2>(callbackfn: (previousValue: U_2, currentValue: ParameterDeclaration, currentIndex: number, array: ParameterDeclaration[]) => U_2, initialValue: U_2): U_2;
        find<S_2 extends ParameterDeclaration>(predicate: (value: ParameterDeclaration, index: number, obj: ParameterDeclaration[]) => value is S_2, thisArg?: any): S_2 | undefined;
        find(predicate: (value: ParameterDeclaration, index: number, obj: ParameterDeclaration[]) => unknown, thisArg?: any): ParameterDeclaration | undefined;
        findIndex(predicate: (value: ParameterDeclaration, index: number, obj: ParameterDeclaration[]) => unknown, thisArg?: any): number;
        fill(value: ParameterDeclaration, start?: number | undefined, end?: number | undefined): any;
        copyWithin(target: number, start?: number | undefined, end?: number | undefined): any;
        entries(): IterableIterator<[number, ParameterDeclaration]>;
        keys(): IterableIterator<number>;
        values(): IterableIterator<ParameterDeclaration>;
        includes(searchElement: ParameterDeclaration, fromIndex?: number | undefined): boolean;
        [Symbol.iterator](): IterableIterator<ParameterDeclaration>;
        readonly [Symbol.unscopables]: {
            [x: number]: boolean | undefined;
            length?: boolean | undefined;
            toString?: boolean | undefined;
            toLocaleString?: boolean | undefined;
            pop?: boolean | undefined;
            push?: boolean | undefined;
            concat?: boolean | undefined;
            join?: boolean | undefined;
            reverse?: boolean | undefined;
            shift?: boolean | undefined;
            slice?: boolean | undefined;
            sort?: boolean | undefined;
            splice?: boolean | undefined;
            unshift?: boolean | undefined;
            indexOf?: boolean | undefined;
            lastIndexOf?: boolean | undefined;
            every?: boolean | undefined;
            some?: boolean | undefined;
            forEach?: boolean | undefined;
            map?: boolean | undefined;
            filter?: boolean | undefined;
            reduce?: boolean | undefined;
            reduceRight?: boolean | undefined;
            find?: boolean | undefined;
            findIndex?: boolean | undefined;
            fill?: boolean | undefined;
            copyWithin?: boolean | undefined;
            entries?: boolean | undefined;
            keys?: boolean | undefined;
            values?: boolean | undefined;
            includes?: boolean | undefined;
            [Symbol.iterator]?: boolean | undefined;
            readonly [Symbol.unscopables]?: boolean | undefined;
        };
    };
    isArray(arg: any): arg is any[];
    from<T>(arrayLike: ArrayLike<T>): T[];
    from<T_1, U_3>(arrayLike: ArrayLike<T_1>, mapfn: (v: T_1, k: number) => U_3, thisArg?: any): U_3[];
    from<T_2>(iterable: Iterable<T_2> | ArrayLike<T_2>): T_2[];
    from<T_3, U_4>(iterable: Iterable<T_3> | ArrayLike<T_3>, mapfn: (v: T_3, k: number) => U_4, thisArg?: any): U_4[];
    of<T_4>(...items: T_4[]): T_4[];
    readonly [Symbol.species]: ArrayConstructor;
};
