///
import * as React from 'react';
export interface ToggleConfig {
defaultOn?: boolean;
on?: boolean;
onToggle?: (on: boolean, bag: ToggleProps) => void;
children: (props: ToggleProps) => React.ReactNode;
}
export interface TogglerComponentProps {
'aria-expanded': boolean;
tabIndex: number;
onClick: () => void;
ref?: any;
}
export interface ToggleOptions {
onClick: (event?: any) => void;
ref?: any;
}
export interface ToggleActions {
getTogglerProps: (options?: ToggleOptions) => TogglerComponentProps;
setOn: () => void;
setOff: () => void;
toggle: () => void;
}
export declare type ToggleProps = ToggleState & ToggleActions;
export interface ToggleState {
on: boolean;
}
export declare class Toggle extends React.Component {
static defaultProps: {
defaultOn: boolean;
onToggle: () => void;
};
toggleKeys: string[];
state: ToggleState;
componentWillReceiveProps({on}: ToggleConfig): void;
setOn: () => void;
setOff: () => void;
toggle: () => void;
getOn(state?: Partial, props?: ToggleConfig): boolean;
isOnControlled(): boolean;
getTogglerProps: (props?: any) => any;
getTogglerStateAndHelpers(): {
on: boolean;
getTogglerProps: (props?: any) => any;
setOn: () => void;
setOff: () => void;
toggle: () => void;
};
setOnState: (state?: boolean) => void;
render(): React.ReactNode;
}