function getComponentSlotsFromTypeDefineTypes(context, slotsNode) {
  const services = getTSParserServices(context)
  const tsNode = services && services.tsNodeMap.get(slotsNode)
  const type = tsNode && services.checker.getTypeAtLocation(tsNode)
  if (
    !type ||
    isAny(type) ||
    isUnknown(type) ||
    isNever(type) ||
    isNull(type)
  ) {
    return [
      {
        type: 'unknown',
        slotName: null,
        node: slotsNode
      }
    ]
  }
  return [...extractRuntimeSlots(type, slotsNode)]
}
Get all slots by looking at all component's properties
@param {RuleContext} context The ESLint rule context object.
@param {TypeNode} slotsNode Type with slots definition
@return {(ComponentInferTypeSlot|ComponentUnknownSlot)[]} Array of component slots