import { Observable } from "rxjs";
import { TypedChanges } from "../lib/interfaces";
export declare function ngOnChanges<T, U extends {
    ngOnChanges: Function;
} = any>(source: U): Observable<TypedChanges<T>>;
export declare function ngOnInit<T extends {
    ngOnInit: Function;
}>(source: T): Observable<void>;
export declare function ngDoCheck<T extends {
    ngDoCheck: Function;
}>(source: T): Observable<void>;
export declare function ngAfterContentInit<T extends {
    ngAfterContentInit: Function;
}>(source: T): Observable<void>;
export declare function ngAfterContentChecked<T extends {
    ngAfterContentChecked: Function;
}>(source: T): Observable<void>;
export declare function ngAfterViewInit<T extends {
    ngAfterViewInit: Function;
}>(source: T): Observable<void>;
export declare function ngAfterViewChecked<T extends {
    ngAfterViewChecked: Function;
}>(source: T): Observable<void>;
export declare function ngOnDestroy<T extends {
    ngOnDestroy: Function;
}>(source: T): Observable<void>;
