import * as React from 'react';
import { WithStyles, Theme } from '@material-ui/core/styles';
import { MuiPickersAdapter } from '../internal/pickers/hooks/useUtils';
import { ClockViewType } from '../internal/pickers/constants/ClockType';
import { PickerSelectionState } from '../internal/pickers/hooks/usePickerState';
import { useMeridiemMode } from '../internal/pickers/hooks/date-helpers-hooks';
export interface ClockProps<TDate> extends ReturnType<typeof useMeridiemMode> {
    date: TDate | null;
    type: ClockViewType;
    value: number;
    isTimeDisabled: (timeValue: number, type: ClockViewType) => boolean;
    children: React.ReactNode[];
    onChange: (value: number, isFinish?: PickerSelectionState) => void;
    ampm?: boolean;
    minutesStep?: number;
    ampmInClock?: boolean;
    allowKeyboardControl?: boolean;
    getClockLabelText: <TDate>(view: 'hours' | 'minutes' | 'seconds', time: TDate, adapter: MuiPickersAdapter<TDate>) => string;
}
export declare const styles: (theme: Theme) => Record<"root" | "clock" | "squareMask" | "pin" | "amButton" | "pmButton" | "meridiemButtonSelected", import("../../../material-ui-styles/src").CSSProperties | import("../../../material-ui-styles/src").CreateCSSProperties<{}> | import("../../../material-ui-styles/src").PropsFunc<{}, import("../../../material-ui-styles/src").CreateCSSProperties<{}>>>;
export declare type ClockClassKey = keyof WithStyles<typeof styles>['classes'];
declare const _default: <TDate>(props: ClockProps<TDate>) => JSX.Element;
export default _default;
