be-consensual
Version:
Provides two-way binding between a checkbox (or other (custom) DOM elements) and surrounding checkboxes (or other (custom) DOM elements).
37 lines (32 loc) • 1.05 kB
TypeScript
import {BeDecoratedProps, MinimalProxy} from 'be-decorated/types';
export interface EndUserProps {
memberAttr?: string,
memberProp?: string,
memberTrueVal?: any,
memberFalseVal?: any,
memberEvent?: string,
selfProp?: string,
selfEvent?: string,
selfIndeterminateProp?: string,
selfTrueVal?: any,
selfFalseVal?: any,
selfIndeterminateTrueVal?: any,
selfIndeterminateFalseVal?: any,
matchCount?: number,
matchCountEcho?: number,
debounceDelay?: number,
downwardFlowInProgress?: boolean,
}
export interface VirtualProps extends EndUserProps, MinimalProxy{}
export type Proxy = Element & VirtualProps;
export interface ProxyProps extends VirtualProps{
proxy: Proxy;
}
export type PP = ProxyProps;
export interface Actions{
onMemberOptions(pp: PP): void;
evaluateState(pp: PP): void;
onMatchCountEchoChange(pp: PP): void;
onSelfProp(pp: PP): void;
finale(proxy: Proxy, target: Element, beDecorProps: BeDecoratedProps): void;
}