Skip to main content

priv/islands/virtual.d.ts

declare const $astral_id: string
declare const $astral_props: Record<string, unknown>
declare const $astral_client: 'load' | 'idle' | 'visible' | 'media'
declare const $astral_media: string | null

type IslandSlots = Record<string, string>

declare module 'astral:island-component' {
  const component: unknown
  export default component
}

declare module 'astral:island-runtime' {
  export function mountIslandComponent(args: {
    id: string
    component: unknown
    props: Record<string, unknown>
    client: 'load' | 'idle' | 'visible' | 'media'
    media: string | null
    slots?: IslandSlots
  }): void
}