node_modules/lit-analyzer/lib/index.cjs.js
/**
 * Returns if this type can be used in a event listener binding
 * @param type
 */
Returns if this type can be used in a event listener binding
@param type
Returns if this type can be used in a event listener binding @param type
function isTypeBindableToEventListener(type) {
    if (tsSimpleType.isAssignableToSimpleTypeKind(type, [tsSimpleType.SimpleTypeKind.FUNCTION, tsSimpleType.SimpleTypeKind.METHOD, tsSimpleType.SimpleTypeKind.UNKNOWN], {
        matchAny: true,
        op: "or"
    })) {
        return true;
    }
    if (type.kind === tsSimpleType.SimpleTypeKind.OBJECT || type.kind === tsSimpleType.SimpleTypeKind.INTERFACE) {
        var handleEventFunction = type.members != null ? type.members.find(function (m) { return m.name === "handleEvent"; }) : undefined;
        if (handleEventFunction != null) {
            return isTypeBindableToEventListener(handleEventFunction.type);
        }
    }
    return false;
}
function isTypeBindableToEventListener ( type ) { if ( tsSimpleType . isAssignableToSimpleTypeKind ( type , [ tsSimpleType . SimpleTypeKind . FUNCTION , tsSimpleType . SimpleTypeKind . METHOD , tsSimpleType . SimpleTypeKind . UNKNOWN ] , { matchAny : true , op : "or" } ) ) { return true ; } if ( type . kind === tsSimpleType . SimpleTypeKind . OBJECT || type . kind === tsSimpleType . SimpleTypeKind . INTERFACE ) { var handleEventFunction = type . members != null ? type . members . find ( function ( m ) { return m . name === "handleEvent" ; } ) : undefined ; if ( handleEventFunction != null ) { return isTypeBindableToEventListener ( handleEventFunction . type ) ; } } return false ; }
Returns if this type can be used in a event listener binding
 @param type
Returns if this type can be used in a event listener binding @param type
// Callable types can be used in the binding // Object types with attributes for the setup function of the event listener can be used // The "handleEvent" property must be present // The "handleEvent" property must be callable