diff --git a/package.json b/package.json
index d5f4ce8..68bbcf6 100644
--- a/package.json
+++ b/package.json
@@ -5,6 +5,7 @@
"main": "src/main.cjs.js",
"module": "src/main.es.js",
"svelte": "src/Portal.svelte",
+ "types": "src/Portal.svelte.d.ts",
"scripts": {
"test": "jest test",
"test:watch": "npm run test -- --watch",
diff --git a/src/Portal.svelte.d.ts b/src/Portal.svelte.d.ts
new file mode 100644
index 0000000..770d6bd
--- /dev/null
+++ b/src/Portal.svelte.d.ts
@@ -0,0 +1,37 @@
+import { SvelteComponentTyped } from "svelte";
+/**
+ * Usage:
or
+ *
+ * @param {HTMLElement} el
+ * @param {HTMLElement|string} target DOM Element or CSS Selector
+ */
+export declare function portal(
+ el: HTMLElement,
+ target?: HTMLElement | string
+): {
+ update: (newTarget: HTMLElement | string) => Promise
;
+ destroy: () => void;
+};
+declare const __propDef: {
+ props: {
+ /**
+ * DOM Element or CSS Selector
+ * @type { HTMLElement|string}
+ */ target?: string | HTMLElement | undefined;
+ };
+ events: {
+ [evt: string]: CustomEvent;
+ };
+ slots: {
+ default: {};
+ };
+};
+export declare type PortalProps = typeof __propDef.props;
+export declare type PortalEvents = typeof __propDef.events;
+export declare type PortalSlots = typeof __propDef.slots;
+export default class Portal extends SvelteComponentTyped<
+ PortalProps,
+ PortalEvents,
+ PortalSlots
+> {}
+export {};