import { Metadate } from '../metadatas/index';
export interface CheckExpress<T extends Metadate> {
    match(arg: any): boolean;
    isMetadata?(arg: any): boolean;
    setMetadata(metadata: T, arg: any): void;
}
export declare class ArgsIterator {
    protected args: any[];
    private idx;
    private metadata;
    constructor(args: any[]);
    isCompeted(): boolean;
    end(): void;
    next<T>(express: CheckExpress<T>): any;
    getArgs(): any[];
    getMetadata(): Metadate;
}
