import * as React from "react"; import { StyleProp, TextStyle } from "react-native"; import { Milliseconds, MillisecondsAccepted } from "@ef-carbon/primitive"; import { ITheme } from "@ef-carbon/react-native-style"; import Media from "../State"; export declare type OnSeekStart = (position: Milliseconds, state: Media) => void; export declare type OnSeek = (position: Milliseconds, state: Media) => void; export declare type OnSeekEnd = (position: Milliseconds, state: Media) => void; export interface IProps { onSeekStart?: OnSeekStart; onSeek?: OnSeek; onSeekEnd?: OnSeekEnd; position: MillisecondsAccepted; duration: MillisecondsAccepted; state: Media; theme?: ITheme; style?: StyleProp; } export interface IState { width: number; start?: number; offset?: number; } declare class Seek extends React.PureComponent { private seekState; private seekTimeout?; constructor(props: IProps); componentWillUnmount(): void; render(): React.ReactNode; private readonly length; private readonly progress; private readonly dotStyle; private clearSeekTimeout; private setSeekTimeout; private readonly handleMoveStart; private readonly handleMove; private readonly handleMoveEnd; private seek; private readonly handleLayout; } export interface IStatic extends React.ComponentClass { } declare const component: IStatic; export { component as Component }; export default Seek;