predicate( title: string,): <T extends boolean | () => boolean | () => Promise<boolean>>( condition: T,) => T extends () => Promise<boolean> ? Promise<void> : void Returns <T extends boolean | () => boolean | () => Promise<boolean>>(
condition: T,
) => T extends () => Promise<boolean> ? Promise<void> : void
Currying function
Test whether condition is satisfied.