Módulo de aumento de tipos de escritura

Tengo extensión para observable. Funcionaba perfectamente bien, pero ahora he actualizado a angular 6 con mecanografiado 2.7.2.

import { Observable } from 'rxjs/Observable';
import { BaseComponent } from './base-component';
import { Subscription } from 'rxjs/Subscription';
import { Subscribable } from 'rxjs';

declare module 'rxjs/Observable' {
    export interface Observable<T> {
        safeSubscribe<T>(this: Observable<T>, component: BaseComponent,
            next?: (value: T) => void, error?: (error: T) => void, complete?: () => void): Subscription;
    }
}


export function safeSubscribe<T>(this: Observable<T>, component: BaseComponent,
    next?: (value: T) => void, error?: (error: T) => void, complete?: () => void): Subscription {
    let sub = this.subscribe(next, error, complete);
    component.markForSafeDelete(sub);
    return sub;
}

Observable.prototype.safeSubscribe = safeSubscribe;

Y este código no funciona

'Observable' solo se refiere a un tipo, pero se está utilizando como un valor aquí.Property 'subscribe' no existe en el tipo 'Observable'.

https: //www.typescriptlang.org/docs/handbook/declaration-merging.htm

Respuestas a la pregunta(1)

Su respuesta a la pregunta