UNPKG

1.12 kBTypeScriptView Raw
1import * as React from 'react';
2import { ExtensionsProps } from '../context';
3import { ConfigurationCascadeProps, ConfigurationSubject, Settings } from '../settings';
4import { ConfiguredExtension } from './extension';
5interface Props<S extends ConfigurationSubject, C extends Settings> extends ConfigurationCascadeProps<S, C>, ExtensionsProps<S, C> {
6 /** The extension that this element is for. */
7 extension: ConfiguredExtension;
8 disabled?: boolean;
9 /** Class name applied to this element. */
10 className?: string;
11 /** Class name applied to this element when it is an "Add" button. */
12 addClassName?: string;
13 /** Called when the component performs an update that requires the parent component to refresh data. */
14 onUpdate: () => void;
15}
16/**
17 * Displays a toggle button for an extension.
18 */
19export declare class ExtensionToggle<S extends ConfigurationSubject, C extends Settings> extends React.PureComponent<Props<S, C>> {
20 private toggles;
21 private subscriptions;
22 componentDidMount(): void;
23 componentWillUnmount(): void;
24 render(): JSX.Element | null;
25}
26export {};