import * as React from 'react'; export interface SwitchGroupProps { name: string; onChange: (value: string) => void; values: string[]; } export interface SwitchGroupContext { switchGroupContext: SwitchGroupContextObject; } export interface SwitchGroupContextObject { getName: () => string; getValues: () => string[]; getOnChange: () => (value: string) => void; subscribe: (cb: UpdateCb) => void; unsubscribe: (cb: UpdateCb) => void; } export declare type UpdateCb = (updates: string[]) => void; export declare class SwitchGroup extends React.PureComponent { static childContextTypes: React.ValidationMap; private _subscriptions; getChildContext(): SwitchGroupContext; render(): React.ReactNode; componentDidUpdate(prev: SwitchGroupProps): void; private _getName; private _getValues; private _getOnChange; private _subscribe; private _unsubscribe; private _notify; private _getUpdates; }