Paramètres fournis ne correspondent pas à la signature de l'appel de la cible

J'obtiens cette erreur quand j'utilise un paramètre de décorateur dans une méthode. La classe implémente une interface. Voici l'interface et la classe:

export interface IClient{
    getServerConfig(): Observable<Response> ;

    getDashboard(): Observable<Response>;

    deploy(channelId: string): Observable<Response>;
}

export class Client implements IClient {

    public constructor( @Inject(Http) private http: Http, @Inject(Model) private config: Model) {
        super(http, config);
    }

    public getServerConfig(): Observable<Response> {
        return null;
    }

    public getDashboard(): Observable<Response> {
        return null;
    }

    public deploy(@Body('param') channelId: string): Observable<Response> {
        return null;
    }
}

Lors de la construction, j'obtiens cette erreur

Supplied parameters do not match any signature of call target.

droit à la déployer fonction.

Le problème semble être le paramètre le décorateur à côté de la channelId paramètre. Maintenant, je ne peux pas l'enlever comme j'en ai besoin alors je me demande si il existe un moyen de garder la définition de l'interface et le décorateur. Les décorateurs ne sont pas autorisés dans les interfaces de sorte que n'est pas une option.

Des idées?

OriginalL'auteur Alex Ciobanu | 2016-02-26