@spscommerce/ds-web-components 5.10.5-ie → 5.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/README.md +3 -0
  2. package/dist/global.d.ts +15 -0
  3. package/dist/lib/components/file-upload/file-upload.d.ts +119 -0
  4. package/dist/lib/components/file-upload/file-upload.examples.d.ts +2 -0
  5. package/dist/lib/components/file-upload/mime-type.enum.d.ts +75 -0
  6. package/dist/lib/components/index.d.ts +11 -0
  7. package/dist/lib/components/insight-card/insight-card.d.ts +40 -0
  8. package/dist/lib/components/insight-card/insight-card.examples.d.ts +51 -0
  9. package/dist/lib/components/insight-card/insights.d.ts +18 -0
  10. package/dist/lib/components/nav-tabs/nav-tab-set.d.ts +7 -0
  11. package/dist/lib/components/nav-tabs/nav-tab.d.ts +24 -0
  12. package/dist/lib/components/nav-tabs/nav-tabs.examples.d.ts +11 -0
  13. package/dist/lib/components/photo/photo.d.ts +42 -0
  14. package/dist/lib/components/photo/photo.examples.d.ts +2 -0
  15. package/dist/lib/decorators/component.d.ts +33 -0
  16. package/dist/lib/decorators/content.d.ts +7 -0
  17. package/dist/lib/decorators/event-dispatcher.d.ts +9 -0
  18. package/dist/lib/decorators/event-listener.d.ts +5 -0
  19. package/dist/lib/decorators/index.d.ts +7 -0
  20. package/dist/lib/decorators/prop.d.ts +6 -0
  21. package/dist/lib/decorators/query-selector.d.ts +19 -0
  22. package/dist/lib/decorators/watch.d.ts +2 -0
  23. package/dist/lib/index.cjs.js +829 -0
  24. package/dist/lib/index.d.ts +6 -0
  25. package/dist/lib/index.es.js +2802 -0
  26. package/dist/lib/manifest.d.ts +2 -0
  27. package/dist/lib/utils/comment.d.ts +2 -0
  28. package/dist/lib/utils/i18n.d.ts +3 -0
  29. package/dist/lib/utils/index.d.ts +5 -0
  30. package/dist/lib/utils/metadata.d.ts +22 -0
  31. package/dist/lib/utils/pragma.d.ts +6 -0
  32. package/dist/lib/utils/register.d.ts +13 -0
  33. package/dist/package.json +36 -0
  34. package/lib/components/file-upload/file-upload.d.ts +119 -0
  35. package/lib/components/file-upload/file-upload.examples.d.ts +2 -0
  36. package/lib/components/file-upload/mime-type.enum.d.ts +75 -0
  37. package/lib/components/index.d.ts +11 -0
  38. package/lib/components/insight-card/insight-card.d.ts +40 -0
  39. package/lib/components/insight-card/insight-card.examples.d.ts +51 -0
  40. package/lib/components/insight-card/insights.d.ts +18 -0
  41. package/lib/components/nav-tabs/nav-tab-set.d.ts +7 -0
  42. package/lib/components/nav-tabs/nav-tab.d.ts +24 -0
  43. package/lib/components/nav-tabs/nav-tabs.examples.d.ts +11 -0
  44. package/lib/components/photo/photo.d.ts +42 -0
  45. package/lib/components/photo/photo.examples.d.ts +2 -0
  46. package/lib/decorators/component.d.ts +33 -0
  47. package/lib/decorators/content.d.ts +7 -0
  48. package/lib/decorators/event-dispatcher.d.ts +9 -0
  49. package/lib/decorators/event-listener.d.ts +5 -0
  50. package/lib/decorators/index.d.ts +7 -0
  51. package/lib/decorators/prop.d.ts +6 -0
  52. package/lib/decorators/query-selector.d.ts +19 -0
  53. package/lib/decorators/watch.d.ts +2 -0
  54. package/lib/index.cjs.js +829 -0
  55. package/lib/index.d.ts +6 -0
  56. package/lib/index.es.js +2802 -0
  57. package/lib/manifest.d.ts +2 -0
  58. package/lib/utils/comment.d.ts +2 -0
  59. package/lib/utils/i18n.d.ts +3 -0
  60. package/lib/utils/index.d.ts +5 -0
  61. package/lib/utils/metadata.d.ts +22 -0
  62. package/lib/utils/pragma.d.ts +6 -0
  63. package/lib/utils/register.d.ts +13 -0
  64. package/package.json +9 -9
  65. package/vite.config.js +1 -1
  66. package/rollup.config.js +0 -22
package/dist/README.md ADDED
@@ -0,0 +1,3 @@
1
+ [//]: # "START_AUTOGENERATED"
2
+
3
+ [//]: # "END_AUTOGENERATED"
@@ -0,0 +1,15 @@
1
+ export {};
2
+
3
+ declare global {
4
+ namespace JSX {
5
+ interface IntrinsicElements {
6
+ "frag": { children?: any };
7
+ "sps-file-upload": any;
8
+ "sps-insight-card": any;
9
+ "sps-insights": any;
10
+ "sps-nav-tab": any;
11
+ "sps-nav-tab-set": any;
12
+ "sps-photo": any;
13
+ }
14
+ }
15
+ }
@@ -0,0 +1,119 @@
1
+ import { ClassBindings, Dispatcher } from "../../decorators/index";
2
+ export declare class SpsFileUploadComponent extends HTMLElement {
3
+ static readonly displayName = "sps-file-upload";
4
+ static readonly props: {
5
+ description: string;
6
+ multiple: string;
7
+ dismissable: string;
8
+ processing: string;
9
+ mini: string;
10
+ downloadLabel: string;
11
+ acceptExtensions: string;
12
+ maxSize: string;
13
+ customRequirement: string;
14
+ selection: {
15
+ event: boolean;
16
+ type: string;
17
+ };
18
+ dismissal: {
19
+ event: boolean;
20
+ type: string;
21
+ };
22
+ download: {
23
+ event: boolean;
24
+ type: string;
25
+ };
26
+ };
27
+ /**
28
+ * The "term" for what the user should upload. Defaults to "File" or "Files",
29
+ * but if you set the `acceptExtensions` prop you might set this to something
30
+ * more specific, such as "Spreadsheet" or "Images".
31
+ */
32
+ description: any;
33
+ /**
34
+ * If true, the component will accept multiple files at once. By default, you can
35
+ * only select one file at a time.
36
+ */
37
+ multiple: boolean;
38
+ /** Controls whether the component is visible. */
39
+ shown: boolean;
40
+ /** Controls whether the user can hide the component from view. */
41
+ dismissable: boolean;
42
+ /**
43
+ * Puts the component in "processing" state, where it displays a spinner and
44
+ * does not allow any files to be selected.
45
+ */
46
+ processing: boolean;
47
+ /** Specifies that the component should be displayed in the "mini" style. */
48
+ mini: boolean;
49
+ /** If provided, the content area width will be set to 50% of the overall width. */
50
+ constrainContentWidth: boolean;
51
+ /** If provided, a button will be rendered with this text as its label. */
52
+ downloadLabel: string;
53
+ /**
54
+ * A list of extensions, provided either as an array of strings or a
55
+ * string containing comma-separates extensions. Only files with the MIME types
56
+ * associated with those extensions will be able to be selected. The case of
57
+ * the extensions does not matter; neither does whether you prefix them with a
58
+ * dot. That is, ".doc", "DOCX", and "jpg" are all valid extensions for this prop.
59
+ */
60
+ acceptExtensions: string[] | string;
61
+ /** The maximum allowable size in bytes for files selected by the component. */
62
+ maxSize: string;
63
+ /** custom label in requirements place. */
64
+ customRequirement: string;
65
+ /**
66
+ * Event which emits when a file or files have been selected by the user. The
67
+ * event detail will be an array of Files.
68
+ */
69
+ selection: Dispatcher<File[]>;
70
+ /**
71
+ * If the `dismissable` prop has been set, this event will fire when the user
72
+ * opts to hide the component.
73
+ */
74
+ dismissal: Dispatcher<void>;
75
+ /**
76
+ * If the `downloadLabel` prop has been provided, this event will fire when the
77
+ * user clicks the download button that is rendered.
78
+ */
79
+ download: Dispatcher<void>;
80
+ /** The HTML file input element within the component. */
81
+ fileInput: HTMLInputElement;
82
+ /**
83
+ * The list of selected files. If the `multiple` prop has not been provided,
84
+ * it is still an array; it will simply be an array of one when the user selects
85
+ * a file.
86
+ */
87
+ files: File[];
88
+ private accept;
89
+ private acceptMIMETypes;
90
+ private acceptExtensionsDescription;
91
+ private maxSizeBytes;
92
+ private active;
93
+ private error;
94
+ private namesOfUnsupportedFiles;
95
+ get [ClassBindings](): string[];
96
+ constructor();
97
+ connectedCallback(): void;
98
+ attributeChangedCallback(attrName: string, oldValue: any, newValue: any): void;
99
+ /**
100
+ * If the `dismissable` prop has been set, this will programmatically
101
+ * dismiss the component and fire the "dismissal" event.
102
+ */
103
+ dismiss(): void;
104
+ /** If the `dismissable` prop has been set, this will programmatically show the component. */
105
+ show(): void;
106
+ render({ t }: {
107
+ t: any;
108
+ }): JSX.Element;
109
+ private parseAndValidateMaxSize;
110
+ private processAcceptExtensions;
111
+ private selectFiles;
112
+ private handleDragOver;
113
+ private handleDragEnter;
114
+ private handleDragLeave;
115
+ private handleDrop;
116
+ private handleBrowseLinkClick;
117
+ private handleDownloadButtonClick;
118
+ private handleFileInputChange;
119
+ }
@@ -0,0 +1,2 @@
1
+ import type { DSReactExamples } from "@spscommerce/ds-shared";
2
+ export declare const SpsFileUploadExamples: DSReactExamples;
@@ -0,0 +1,75 @@
1
+ export declare enum MIMEType {
2
+ "7Z" = "application/x-7z-compressed",
3
+ AAC = "audio/aac",
4
+ ABW = "application/x-abiword",
5
+ ARC = "application/octet-stream",
6
+ AVI = "video/x-msvideo",
7
+ AZW = "application/vnd.amazon.ebook",
8
+ BIN = "application/octet-stream",
9
+ BMP = "image/bmp",
10
+ BZ = "application/x-bzip",
11
+ BZ2 = "application/x-bzip2",
12
+ CSH = "application/x-csh",
13
+ CSS = "text/css",
14
+ CSV = "text/csv,application/vnd.ms-excel",
15
+ DOC = "application/msword",
16
+ DOCX = "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
17
+ EOT = "application/vnd.ms-fontobject",
18
+ EPUB = "application/epub+zip",
19
+ ES = "application/ecmascript",
20
+ FLV = "video/x-flv",
21
+ GIF = "image/gif",
22
+ GZ = "application/x-gzip",
23
+ HTM = "text/html",
24
+ HTML = "text/html",
25
+ ICO = "image/x-icon",
26
+ ICS = "text/calendar",
27
+ JAR = "application/java-archive",
28
+ JPEG = "image/jpeg",
29
+ JPG = "image/jpeg",
30
+ JS = "application/javascript",
31
+ JSON = "application/json",
32
+ M3U = "audio/x-mpequrl",
33
+ MID = "audio/midi",
34
+ MIDI = "audio/midi",
35
+ MOV = "video/quicktime",
36
+ MP3 = "audio/mpeg3",
37
+ MP4 = "video/mp4",
38
+ MPEG = "video/mpeg",
39
+ MPKG = "application/vnd.apple.installer+xml",
40
+ ODP = "application/vnd.oasis.opendocument.presentation",
41
+ ODS = "application/vnd.oasis.opendocument.spreadsheet",
42
+ ODT = "application/vnd.oasis.opendocument.text",
43
+ OGA = "audio/ogg",
44
+ OGV = "video/ogg",
45
+ OGX = "application/ogg",
46
+ OTF = "font/otf",
47
+ PNG = "image/png",
48
+ PDF = "application/pdf",
49
+ PPT = "application/vnd.ms-powerpoint",
50
+ PPTX = "application/vnd.openxmlformats-officedocument.presentationml.presentation",
51
+ RAR = "application/x-rar-compressed",
52
+ RTF = "application/rtf",
53
+ SH = "application/x-sh",
54
+ SVG = "image/svg+xml",
55
+ SWF = "application/x-shockwave-flash",
56
+ TAR = "application/x-tar",
57
+ TIF = "image/tiff",
58
+ TIFF = "image/tiff",
59
+ TS = "application/typescript",
60
+ TTF = "font/ttf",
61
+ TXT = "text/plain",
62
+ VSD = "application/vnd.visio",
63
+ WAV = "audio/wav",
64
+ WEBA = "audio/webm",
65
+ WEBM = "video/webm",
66
+ WEBP = "image/webp",
67
+ WOFF = "font/woff",
68
+ WOFF2 = "font/woff2",
69
+ XHTML = "application/xhtml+xml",
70
+ XLS = "application/vnd.ms-excel",
71
+ XLSX = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
72
+ XML = "application/xml",
73
+ XUL = "application/vnd.mozilla.xul+xml",
74
+ ZIP = "application/zip"
75
+ }
@@ -0,0 +1,11 @@
1
+ export * from "./file-upload/file-upload";
2
+ export * from "./file-upload/file-upload.examples";
3
+ export * from "./file-upload/mime-type.enum";
4
+ export * from "./insight-card/insight-card";
5
+ export * from "./insight-card/insights";
6
+ export * from "./insight-card/insight-card.examples";
7
+ export * from "./nav-tabs/nav-tab";
8
+ export * from "./nav-tabs/nav-tab-set";
9
+ export * from "./nav-tabs/nav-tabs.examples";
10
+ export * from "./photo/photo";
11
+ export * from "./photo/photo.examples";
@@ -0,0 +1,40 @@
1
+ /** @jsx h */
2
+ import { SpsInsightCardKind, SpsIcon } from "@spscommerce/ds-shared";
3
+ import { ClassBindings } from "../../decorators/index";
4
+ export declare class SpsInsightCardComponent extends HTMLElement {
5
+ static readonly displayName = "sps-insight-card";
6
+ static readonly props: {
7
+ icon: string;
8
+ kind: string;
9
+ title: string;
10
+ metric: string;
11
+ partnerCount: string;
12
+ totalPartners: string;
13
+ secondary: string;
14
+ };
15
+ /** If icon is provided then it will override the default icon associated with kind */
16
+ icon: SpsIcon;
17
+ /** Specifies which of the visual styling variants of the Insight Card to use. */
18
+ kind: SpsInsightCardKind;
19
+ title: string;
20
+ /** The main number representing the metric that the Insight Card is intended to surface. */
21
+ metric: number;
22
+ /**
23
+ * The number of partners this insight applies to.
24
+ * Must be used together with `totalPartners`.
25
+ */
26
+ partnerCount: number;
27
+ /** The total number of partners. Must be used together with `partnerCount`. */
28
+ totalPartners: number;
29
+ /**
30
+ * Whether this is a "secondary" Insight Card,
31
+ * meaning it will be displayed in a compact layout.
32
+ */
33
+ secondary: boolean;
34
+ private content;
35
+ private detail;
36
+ get [ClassBindings](): string[];
37
+ render({ t }: {
38
+ t: any;
39
+ }): JSX.Element;
40
+ }
@@ -0,0 +1,51 @@
1
+ export declare const SpsInsightCardExamples: {
2
+ basic: {
3
+ label: string;
4
+ examples: {
5
+ basic: {
6
+ jsx: string;
7
+ };
8
+ };
9
+ };
10
+ details: {
11
+ label: string;
12
+ examples: {
13
+ details: {
14
+ jsx: string;
15
+ };
16
+ };
17
+ };
18
+ partner_count: {
19
+ label: string;
20
+ examples: {
21
+ partner_count: {
22
+ jsx: string;
23
+ };
24
+ };
25
+ };
26
+ expansion: {
27
+ label: string;
28
+ examples: {
29
+ expansion: {
30
+ jsx: string;
31
+ };
32
+ };
33
+ };
34
+ events: {
35
+ label: string;
36
+ description: string;
37
+ examples: {
38
+ events: {
39
+ react: string;
40
+ };
41
+ };
42
+ };
43
+ alternateIcon: {
44
+ label: string;
45
+ examples: {
46
+ basic: {
47
+ react: string;
48
+ };
49
+ };
50
+ };
51
+ };
@@ -0,0 +1,18 @@
1
+ import { ClassBindings } from "../../decorators/index";
2
+ /** Container for Insight Cards. */
3
+ export declare class SpsInsightsComponent extends HTMLElement {
4
+ static readonly displayName = "sps-insights";
5
+ static readonly props: {};
6
+ private content;
7
+ private details;
8
+ private showAdditionalInsights;
9
+ get [ClassBindings](): string[];
10
+ constructor();
11
+ /**
12
+ * Only the first ten Insight Cards are visible by default; the rest are behind
13
+ * the "Show Additional Insights"/"Hide Additional Insights" button. This method
14
+ * will toggle the additional insights.
15
+ */
16
+ toggleAdditionalInsights(): void;
17
+ render(): JSX.Element;
18
+ }
@@ -0,0 +1,7 @@
1
+ /** Contains a set of navigation tabs. */
2
+ export declare class SpsNavTabSetComponent extends HTMLElement {
3
+ static readonly displayName = "sps-nav-tab-set";
4
+ static readonly props: {};
5
+ private content;
6
+ render(): JSX.Element;
7
+ }
@@ -0,0 +1,24 @@
1
+ /** @jsx h */
2
+ import { SpsIcon } from "@spscommerce/ds-shared";
3
+ import { ClassBindings } from "../../decorators/index";
4
+ export declare class SpsNavTabComponent extends HTMLElement {
5
+ static readonly displayName = "sps-nav-tab";
6
+ static readonly props: {
7
+ active: string;
8
+ label: string;
9
+ icon: string;
10
+ tag: string;
11
+ href: string;
12
+ target: string;
13
+ };
14
+ active: boolean;
15
+ label: string;
16
+ icon: SpsIcon;
17
+ tag: string;
18
+ /** If you need the tab to operate as an HTML link, provide an href. */
19
+ href: string;
20
+ /** If you provide href, target is the same attribute as on an <a> element. */
21
+ target: string;
22
+ get [ClassBindings](): string[];
23
+ render(): JSX.Element;
24
+ }
@@ -0,0 +1,11 @@
1
+ export declare const SpsNavTabsExamples: {
2
+ basic: {
3
+ label: string;
4
+ description: string;
5
+ examples: {
6
+ basic: {
7
+ react: string;
8
+ };
9
+ };
10
+ };
11
+ };
@@ -0,0 +1,42 @@
1
+ /** @jsx h */
2
+ import { SpsIcon } from "@spscommerce/ds-shared";
3
+ import { ClassBindings, StyleBindings } from "../../decorators/index";
4
+ export declare enum SpsPhotoDisplayMode {
5
+ FIT = "fit",
6
+ FILL = "fill"
7
+ }
8
+ export declare class SpsPhotoComponent extends HTMLElement {
9
+ static readonly displayName = "sps-photo";
10
+ static readonly props: {
11
+ src: string;
12
+ altText: string;
13
+ mode: string;
14
+ placeholderIcon: string;
15
+ };
16
+ /** Photo source path, exactly the same as for an <img> tag. */
17
+ src: string;
18
+ /** Alt text to put on the image for vision impaired users. */
19
+ altText: string;
20
+ /** Display mode - fill or fit. */
21
+ mode: SpsPhotoDisplayMode;
22
+ /** If src is empty, the placeholder icon will be displayed instead. */
23
+ placeholderIcon: SpsIcon;
24
+ private width;
25
+ private fitWidth;
26
+ private imageInternal;
27
+ /** The native HTML <img> element within the photo component. */
28
+ get image(): HTMLImageElement;
29
+ set image(newValue: HTMLImageElement);
30
+ get [ClassBindings](): string[];
31
+ get [StyleBindings](): {
32
+ fontSize: string;
33
+ width: string;
34
+ height: string;
35
+ };
36
+ private waitForWidthInterval;
37
+ private waitForImgHeightInterval;
38
+ connectedCallback(): void;
39
+ disconnectedCallback(): void;
40
+ render(): JSX.Element;
41
+ private setWidth;
42
+ }
@@ -0,0 +1,2 @@
1
+ import type { DSReactExamples } from "@spscommerce/ds-shared";
2
+ export declare const SpsPhotoExamples: DSReactExamples;
@@ -0,0 +1,33 @@
1
+ import type { I18nObject } from "@spscommerce/ds-shared";
2
+ import type { ComponentConfig } from "../utils/index";
3
+ export declare const AttrBindings: unique symbol;
4
+ export declare const ClassBindings: unique symbol;
5
+ export declare const StyleBindings: unique symbol;
6
+ interface DSElementExtension {
7
+ __initialized: boolean;
8
+ __observer: MutationObserver;
9
+ __queuedUpdate: number;
10
+ __managedClasses: Set<string>;
11
+ __cbAttributeChanged?: (key: string, oldValue: any, newValue: any) => any;
12
+ __cbConnected?: () => any;
13
+ __cbDisconnected?: () => any;
14
+ __updateHostBindings: () => any;
15
+ __updateChildQueries: (adhereToRefreshOption?: boolean) => any;
16
+ __gatherChildren: () => any;
17
+ __startMutObs: () => any;
18
+ __stopMutObs: () => any;
19
+ __doRender: () => any;
20
+ update: () => any;
21
+ attributeChangedCallback: (key: string, oldValue: any, newValue: any) => any;
22
+ connectedCallback: () => any;
23
+ disconnectedCallback: () => any;
24
+ contentChangedCallback?: () => any;
25
+ render?: (i18n: I18nObject) => any;
26
+ }
27
+ export declare type DSComponent = HTMLElement & DSElementExtension;
28
+ /**
29
+ * Marks a class as a component, setting the tag it will be registered under
30
+ * when the class is passed to `register()`.
31
+ */
32
+ export declare function Component(config: ComponentConfig): ClassDecorator;
33
+ export {};
@@ -0,0 +1,7 @@
1
+ /**
2
+ * A property on a component class, when decorated with `@Content()`, will
3
+ * be set to the content that has been placed inside the component. It can
4
+ * then be placed wherever you want in the component's JSX. Analogous to
5
+ * the `children` prop in react or `<ng-content>` in Angular.
6
+ */
7
+ export declare function Content(): PropertyDecorator;
@@ -0,0 +1,9 @@
1
+ /**
2
+ * A custom event dispatcher for a component. `T` is the type of `event.detail`,
3
+ * which will be set to whatever is passed in to `dispatch()`.
4
+ */
5
+ export interface Dispatcher<T> {
6
+ dispatch: (detail: T) => CustomEvent<T>;
7
+ }
8
+ /** Defines a component class property as a dispatcher for a custom event. */
9
+ export declare function EventDispatcher(eventName?: string): PropertyDecorator;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Marks a method as a handler for a given event on the host element. For example, to respond
3
+ * to clicks on a component, you would use a method decorated with `@EventListener("click")`.
4
+ */
5
+ export declare function EventListener(eventName: string): MethodDecorator;
@@ -0,0 +1,7 @@
1
+ export * from "./component";
2
+ export * from "./content";
3
+ export * from "./event-dispatcher";
4
+ export * from "./event-listener";
5
+ export * from "./prop";
6
+ export * from "./query-selector";
7
+ export * from "./watch";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Marks a component class property as a prop, meaning that a value can be passed
3
+ * in for it via an attribute on the element, and whenever that value changes, the
4
+ * component will be re-rendered.
5
+ */
6
+ export declare function Prop(castToType?: (value: unknown) => unknown): PropertyDecorator;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Options for the query selector decorators. If `refresh` is set to true,
3
+ * the property will be refreshed on every render.
4
+ */
5
+ export interface QuerySelectorOptions {
6
+ refresh?: boolean;
7
+ }
8
+ /**
9
+ * Defines a component class property as containing the
10
+ * results of a `querySelector(selector)` call on
11
+ * the component host element.
12
+ */
13
+ export declare function QuerySelector(selector: string, options?: QuerySelectorOptions): PropertyDecorator;
14
+ /**
15
+ * Defines a component class property as containing the
16
+ * results of a `querySelectorAll(selector)` call on
17
+ * the component host element.
18
+ */
19
+ export declare function QuerySelectorAll(selector: string, options?: QuerySelectorOptions): PropertyDecorator;
@@ -0,0 +1,2 @@
1
+ /** A "watched" property will trigger an update whenever it's written to. */
2
+ export declare function Watch(): PropertyDecorator;