From 2f0b5bebbe76a192e239c1ddfd0f3e8b0f7bf8ca Mon Sep 17 00:00:00 2001 From: Anton Bobrov Date: Fri, 6 Mar 2020 18:31:48 +0300 Subject: [PATCH] Types were added --- package.json | 3 ++- types.d.ts | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 types.d.ts diff --git a/package.json b/package.json index c1db194..3cd6902 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,9 @@ { "name": "dom-create-element", - "version": "1.0.2", + "version": "1.0.3", "description": "Create DOM elements.", "main": "index.js", + "types": "./types.d.ts", "license": "MIT", "author": { "name": "Baptiste Briel", diff --git a/types.d.ts b/types.d.ts new file mode 100644 index 0000000..31e403f --- /dev/null +++ b/types.d.ts @@ -0,0 +1,32 @@ +export = create; + +type DomCreateElement = (CreateProperties) => HTMLElement; + +type DomCreateElementBase = { + attr?: Array<[string, string]>; +}; + +type DomCreateElementCommon = DomCreateElementBase & { + children?: Array + html?: string; +}; + +type DomCreateElementOther = DomCreateElementCommon & { + selector: string; +}; + +type DomCreateElementImage = DomCreateElementBase & { + selector: 'img' | 'IMG'; + src?: string; + lazyload?: boolean; +}; + +type DomCreateElementAnchor = DomCreateElementCommon & { + selector: 'a' | 'A'; + link?: string; + target?: string; +}; + +declare function create(params:DomCreateElementImage): HTMLImageElement; +declare function create(params:DomCreateElementAnchor): HTMLAnchorElement; +declare function create(params:DomCreateElementOther): HTMLElement; \ No newline at end of file