import { getElement , getElements } from "~/browser" ; /**
 * Component type
 */ export type ComponentType = "iconsearch" | "iconsearch-query" | "iconsearch-result" | "sponsorship" | "sponsorship-count" | "sponsorship-total" ; template T template U export type Component < T extends { } = { } , U extends HTMLElement = HTMLElement > = T & { ref : U ; } ; /**
 * Component type map
 */ interface ComponentTypeMap { "iconsearch" : HTMLElement ; "iconsearch-query" : HTMLInputElement ; "iconsearch-result" : HTMLElement ; "sponsorship" : HTMLElement ; "sponsorship-count" : HTMLElement ; "sponsorship-total" : HTMLElement ; } template T param type param node returns export function getComponentElement < T extends ComponentType > ( type , node = document ) { return getElement ( `[data-mdx-component=${ type }]` , node ) ; } template T param type param node returns export function getComponentElements < T extends ComponentType > ( type , node = document ) { return getElements ( `[data-mdx-component=${ type }]` , node ) ; }