import { TConnectionState, TEventHandler, TTimingStateVectorUpdate } from '../types';
import { IEventTarget } from './event-target';
import { ITimingProviderEventMap } from './timing-provider-event-map';
import { ITimingStateVector } from './timing-state-vector';
export interface ITimingProvider extends IEventTarget<ITimingProviderEventMap> {
    readonly endPosition: number;
    readonly error: null | Error;
    onadjust: null | TEventHandler<this>;
    onchange: null | TEventHandler<this>;
    onreadystatechange: null | TEventHandler<this>;
    readonly readyState: TConnectionState;
    readonly skew: number;
    readonly startPosition: number;
    readonly vector: ITimingStateVector;
    update(newVector: TTimingStateVectorUpdate): Promise<void>;
}
//# sourceMappingURL=timing-provider.d.ts.map