mirror of
https://github.com/SomboChea/ui
synced 2024-06-30 06:56:23 +07:00
128 lines
4.0 KiB
JavaScript
128 lines
4.0 KiB
JavaScript
// flow-typed signature: 02db3523747059d89e87d4dec6873edf
|
|
// flow-typed version: 62a0c60689/enzyme_v3.x.x/flow_>=v0.53.x
|
|
|
|
import * as React from "react";
|
|
|
|
declare module "enzyme" {
|
|
declare type PredicateFunction<T: Wrapper> = (
|
|
wrapper: T,
|
|
index: number
|
|
) => boolean;
|
|
declare type NodeOrNodes = React.Node | Array<React.Node>;
|
|
declare type EnzymeSelector = string | Class<React.Component<*, *>> | Object;
|
|
|
|
// CheerioWrapper is a type alias for an actual cheerio instance
|
|
// TODO: Reference correct type from cheerio's type declarations
|
|
declare type CheerioWrapper = any;
|
|
|
|
declare class Wrapper {
|
|
find(selector: EnzymeSelector): this,
|
|
findWhere(predicate: PredicateFunction<this>): this,
|
|
filter(selector: EnzymeSelector): this,
|
|
filterWhere(predicate: PredicateFunction<this>): this,
|
|
hostNodes(): this,
|
|
contains(nodeOrNodes: NodeOrNodes): boolean,
|
|
containsMatchingElement(node: React.Node): boolean,
|
|
containsAllMatchingElements(nodes: NodeOrNodes): boolean,
|
|
containsAnyMatchingElements(nodes: NodeOrNodes): boolean,
|
|
dive(option?: { context?: Object }): this,
|
|
exists(): boolean,
|
|
isEmptyRender(): boolean,
|
|
matchesElement(node: React.Node): boolean,
|
|
hasClass(className: string): boolean,
|
|
is(selector: EnzymeSelector): boolean,
|
|
isEmpty(): boolean,
|
|
not(selector: EnzymeSelector): this,
|
|
children(selector?: EnzymeSelector): this,
|
|
childAt(index: number): this,
|
|
parents(selector?: EnzymeSelector): this,
|
|
parent(): this,
|
|
closest(selector: EnzymeSelector): this,
|
|
render(): CheerioWrapper,
|
|
unmount(): this,
|
|
text(): string,
|
|
html(): string,
|
|
get(index: number): React.Node,
|
|
getNodes(): Array<React.Node>,
|
|
getDOMNode(): HTMLElement | HTMLInputElement,
|
|
at(index: number): this,
|
|
first(): this,
|
|
last(): this,
|
|
state(key?: string): any,
|
|
context(key?: string): any,
|
|
props(): Object,
|
|
prop(key: string): any,
|
|
key(): string,
|
|
simulate(event: string, ...args: Array<any>): this,
|
|
setState(state: {}, callback?: Function): this,
|
|
setProps(props: {}): this,
|
|
setContext(context: Object): this,
|
|
instance(): React.Component<*, *>,
|
|
update(): this,
|
|
debug(): string,
|
|
type(): string | Function | null,
|
|
name(): string,
|
|
forEach(fn: (node: this, index: number) => mixed): this,
|
|
map<T>(fn: (node: this, index: number) => T): Array<T>,
|
|
reduce<T>(
|
|
fn: (value: T, node: this, index: number) => T,
|
|
initialValue?: T
|
|
): Array<T>,
|
|
reduceRight<T>(
|
|
fn: (value: T, node: this, index: number) => T,
|
|
initialValue?: T
|
|
): Array<T>,
|
|
some(selector: EnzymeSelector): boolean,
|
|
someWhere(predicate: PredicateFunction<this>): boolean,
|
|
every(selector: EnzymeSelector): boolean,
|
|
everyWhere(predicate: PredicateFunction<this>): boolean,
|
|
length: number
|
|
}
|
|
|
|
declare class ReactWrapper extends Wrapper {
|
|
constructor(nodes: NodeOrNodes, root: any, options?: ?Object): ReactWrapper,
|
|
mount(): this,
|
|
ref(refName: string): this,
|
|
detach(): void
|
|
}
|
|
|
|
declare class ShallowWrapper extends Wrapper {
|
|
constructor(
|
|
nodes: NodeOrNodes,
|
|
root: any,
|
|
options?: ?Object
|
|
): ShallowWrapper,
|
|
equals(node: React.Node): boolean,
|
|
shallow(options?: { context?: Object }): ShallowWrapper
|
|
}
|
|
|
|
declare function shallow(
|
|
node: React.Node,
|
|
options?: { context?: Object, disableLifecycleMethods?: boolean }
|
|
): ShallowWrapper;
|
|
declare function mount(
|
|
node: React.Node,
|
|
options?: {
|
|
context?: Object,
|
|
attachTo?: HTMLElement,
|
|
childContextTypes?: Object
|
|
}
|
|
): ReactWrapper;
|
|
declare function render(
|
|
node: React.Node,
|
|
options?: { context?: Object }
|
|
): CheerioWrapper;
|
|
|
|
declare module.exports: {
|
|
configure(options: {
|
|
Adapter?: any,
|
|
disableLifecycleMethods?: boolean
|
|
}): void,
|
|
render: typeof render,
|
|
mount: typeof mount,
|
|
shallow: typeof shallow,
|
|
ShallowWrapper: typeof ShallowWrapper,
|
|
ReactWrapper: typeof ReactWrapper
|
|
};
|
|
}
|