Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
import { ReactNode } from 'react';
import { CommonState } from 'src/state/typings';
import { SelectionState } from 'src/state';
import { EventHandlerArg } from 'typings/generic';
import { ToggleItemProps } from '../ToggleItem/typings';
export declare type ToggleState = CommonState & SelectionState;
/**
 * Toggle Render Props Function
 */
export interface ToggleListRenderProp extends Function {
    (props: ToggleListProps, state: ToggleState): ReactNode;
}
export interface ToggleListHeaderProps {
    (props: ToggleListProps): ReactNode;
}
export interface ToggleListItemRenderProp extends Function {
    (item: ToggleItemProps, state: SelectionState, listProps: ToggleListProps): ReactNode;
}
export declare type ToggleListOnChangeArgs = EventHandlerArg<ToggleListProps, SelectionState, ToggleItemProps>;
export interface ToggleListOnChange extends Function {
    (args: ToggleListOnChangeArgs): void;
}
export declare type ListOfToggleProps = Array<ToggleItemProps>;
export interface ToggleListProps {
    list: ListOfToggleProps;
    className?: string;
    children?: ReactNode;
    breedType?: 'radio' | 'checkbox' | string;
    onChange?: ToggleListOnChange;
    title?: string;
    /**
     * Render Props Function
     */
    renderList?: ToggleListRenderProp;
    renderItem?: ToggleListItemRenderProp;
    renderWrapper?: ToggleListRenderProp;
    renderHeader?: ToggleListHeaderProps;
    renderContentWrapper?: Function;
}