import type Subscribable from './Subscribable';
export declare type CleanupFunction = () => void;
export declare type Observer<PayloadType> = (callback: () => void, payload?: PayloadType) => CleanupFunction | null;
export default class Subscription<PayloadType> {
    private subscribable;
    observer: Observer<PayloadType>;
    constructor(observer: Observer<PayloadType>, subscribable: Subscribable<PayloadType>);
    unsubscribe(): void;
}
