diff --git a/codegen/codegen.go b/codegen/codegen.go index b8a1c80..599cc27 100644 --- a/codegen/codegen.go +++ b/codegen/codegen.go @@ -140,6 +140,13 @@ func GenerateTypeDefinitions(slots map[string]string) (string, error) { } b.WriteString("\ndeclare global {\n") + b.WriteString(" interface WcReadyDetail {\n") + b.WriteString(" tag: string;\n") + b.WriteString(" slot: string;\n") + b.WriteString(" }\n") + b.WriteString(" interface HTMLElementEventMap {\n") + b.WriteString(` "wc-ready": CustomEvent;` + "\n") + b.WriteString(" }\n") b.WriteString(" interface HTMLElementTagNameMap {\n") for _, entry := range entries { if !isValidCustomElementTag(entry.Tag) { diff --git a/codegen/codegen_test.go b/codegen/codegen_test.go index ccfe3b3..330b116 100644 --- a/codegen/codegen_test.go +++ b/codegen/codegen_test.go @@ -76,6 +76,9 @@ func TestGenerateTypeDefinitions_Good(t *testing.T) { dts, err := GenerateTypeDefinitions(slots) require.NoError(t, err) assert.Contains(t, dts, "declare global") + assert.Contains(t, dts, "interface WcReadyDetail") + assert.Contains(t, dts, `interface HTMLElementEventMap`) + assert.Contains(t, dts, `"wc-ready": CustomEvent;`) assert.Contains(t, dts, "class NavBar extends HTMLElement") assert.Contains(t, dts, "class MainContent extends HTMLElement") assert.Contains(t, dts, `"nav-bar": NavBar;`)