@angular-wave/angular.ts 0.15.0 → 0.15.2

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 (62) hide show
  1. package/@types/angular.d.ts +4 -1
  2. package/@types/core/compile/attributes.d.ts +28 -4
  3. package/@types/core/compile/inteface.d.ts +5 -1
  4. package/@types/core/di/inteface.d.ts +11 -0
  5. package/@types/core/parse/ast/ast-node.d.ts +2 -0
  6. package/@types/core/parse/parse.d.ts +4 -1
  7. package/@types/core/scope/interface.d.ts +26 -0
  8. package/@types/core/scope/scope.d.ts +16 -24
  9. package/@types/directive/bind/bind.d.ts +5 -7
  10. package/@types/directive/form/form.d.ts +12 -9
  11. package/@types/directive/init/init.d.ts +2 -2
  12. package/@types/directive/input/input.d.ts +8 -24
  13. package/@types/directive/listener/listener.d.ts +4 -0
  14. package/@types/directive/model/interface.d.ts +18 -0
  15. package/@types/directive/model/model.d.ts +20 -18
  16. package/@types/directive/non-bindable/non-bindable.d.ts +2 -2
  17. package/@types/directive/select/select.d.ts +2 -2
  18. package/@types/directive/setter/setter.d.ts +2 -2
  19. package/@types/directive/show-hide/show-hide.d.ts +3 -4
  20. package/@types/directive/switch/switch.d.ts +4 -4
  21. package/@types/interface.d.ts +22 -1
  22. package/@types/namespace.d.ts +16 -2
  23. package/@types/router/router.d.ts +5 -3
  24. package/@types/router/scroll/interface.d.ts +1 -1
  25. package/@types/router/state/interface.d.ts +5 -0
  26. package/@types/router/state/state-builder.d.ts +10 -6
  27. package/@types/router/state/state-matcher.d.ts +11 -3
  28. package/@types/router/state/state-object.d.ts +3 -5
  29. package/@types/router/state/state-queue-manager.d.ts +14 -8
  30. package/@types/router/state/state-registry.d.ts +12 -3
  31. package/@types/router/state/state-service.d.ts +8 -2
  32. package/@types/router/transition/hook-registry.d.ts +15 -5
  33. package/@types/router/transition/transition.d.ts +4 -2
  34. package/@types/router/url/url-rules.d.ts +3 -84
  35. package/@types/router/url/url-service.d.ts +9 -8
  36. package/@types/services/cookie/cookie.d.ts +3 -11
  37. package/@types/services/http/http.d.ts +6 -31
  38. package/@types/services/http/interface.d.ts +22 -7
  39. package/@types/services/location/location.d.ts +14 -13
  40. package/@types/services/sce/interface.d.ts +25 -0
  41. package/@types/services/sse/interface.d.ts +8 -1
  42. package/@types/services/sse/sse.d.ts +10 -18
  43. package/@types/services/storage/storage.d.ts +6 -6
  44. package/@types/services/stream/interface.d.ts +1 -1
  45. package/@types/services/stream/stream.d.ts +98 -0
  46. package/@types/services/template-request/interface.d.ts +2 -9
  47. package/@types/services/template-request/template-request.d.ts +7 -40
  48. package/@types/shared/common.d.ts +2 -2
  49. package/@types/shared/dom.d.ts +21 -42
  50. package/@types/shared/hof.d.ts +27 -37
  51. package/@types/shared/noderef.d.ts +2 -2
  52. package/@types/shared/strings.d.ts +13 -4
  53. package/@types/shared/utils.d.ts +123 -76
  54. package/@types/shared/validate.d.ts +7 -0
  55. package/dist/angular-ts.esm.js +1129 -1407
  56. package/dist/angular-ts.umd.js +1129 -1407
  57. package/dist/angular-ts.umd.min.js +1 -1
  58. package/dist/angular-ts.umd.min.js.gz +0 -0
  59. package/dist/angular-ts.umd.min.js.map +1 -1
  60. package/package.json +1 -1
  61. package/@types/router/state-filters.d.ts +0 -39
  62. package/@types/shared/cache.d.ts +0 -7
@@ -1,4 +1,7 @@
1
- export class Angular {
1
+ export class Angular extends EventTarget {
2
+ constructor(submodule?: boolean);
3
+ /** @private @type {boolean} */
4
+ private _submodule;
2
5
  /** @private @type {!Array<string|any>} */
3
6
  private _bootsrappedModules;
4
7
  /** @public @type {ng.PubSubService} */
@@ -1,6 +1,25 @@
1
+ /**
2
+ * @extends {Record<string, any>}
3
+ */
1
4
  export class Attributes {
2
5
  static $nonscope: boolean;
3
6
  /**
7
+ * Creates an Attributes instance.
8
+ *
9
+ * There are two construction modes:
10
+ *
11
+ * 1. **Fresh instance** (no `attributesToCopy`):
12
+ * - Used when compiling a DOM element for the first time.
13
+ * - Initializes a new `$attr` map to track normalized → DOM attribute names.
14
+ *
15
+ * 2. **Clone instance** (`attributesToCopy` provided):
16
+ * - Used when cloning attributes for directive linking / child scopes.
17
+ * - Performs a shallow copy of all properties from the source Attributes object,
18
+ * including `$attr`, normalized attribute values, and internal fields
19
+ * (e.g. `$$observers`).
20
+ * - `$attr` is intentionally **not reinitialized** in this case, because the
21
+ * source object already contains the correct normalized → DOM attribute mapping.
22
+ *
4
23
  * @param {ng.AnimateService} $animate
5
24
  * @param {ng.ExceptionHandlerService} $exceptionHandler
6
25
  * @param {*} $sce
@@ -17,9 +36,13 @@ export class Attributes {
17
36
  _$animate: import("../../animations/interface.ts").AnimateService;
18
37
  _$exceptionHandler: import("../../services/exception/interface.ts").ExceptionHandler;
19
38
  _$sce: any;
39
+ /**
40
+ * A map of DOM element attribute names to the normalized name. This is needed
41
+ * to do reverse lookup from normalized name back to actual name.
42
+ */
20
43
  $attr: {};
21
44
  /** @type {import("../../shared/noderef.js").NodeRef} */
22
- $nodeRef: import("../../shared/noderef.js").NodeRef;
45
+ _nodeRef: import("../../shared/noderef.js").NodeRef;
23
46
  /** @type {Node|Element} */
24
47
  get $$element(): Node | Element;
25
48
  /**
@@ -71,6 +94,7 @@ export class Attributes {
71
94
  attrName?: string | undefined,
72
95
  ): void;
73
96
  /**
97
+ * @template T
74
98
  * Observes an interpolated attribute.
75
99
  *
76
100
  * The observer function will be invoked once during the next `$digest` following
@@ -78,13 +102,13 @@ export class Attributes {
78
102
  * changes.
79
103
  *
80
104
  * @param {string} key Normalized key. (ie ngAttribute) .
81
- * @param {any} fn Function that will be called whenever
105
+ * @param {(value?: T) => any} fn Function that will be called whenever
82
106
  the interpolated value of the attribute changes.
83
107
  * See the {@link guide/interpolation#how-text-and-attribute-bindings-work Interpolation
84
108
  * guide} for more info.
85
- * @returns {function()} Returns a deregistration function for this observer.
109
+ * @returns {Function} Returns a deregistration function for this observer.
86
110
  */
87
- $observe(key: string, fn: any): () => any;
111
+ $observe<T>(key: string, fn: (value?: T) => any): Function;
88
112
  $$observers: any;
89
113
  setSpecialAttr(element: any, attrName: any, value: any): void;
90
114
  /**
@@ -1,5 +1,7 @@
1
1
  import type { Scope } from "../scope/scope.js";
2
2
  import type { NodeRef } from "../../shared/noderef.js";
3
+ type TranscludedNodes = Node | Node[] | NodeList | null;
4
+ type TranscludeFnCb = (clone?: TranscludedNodes, scope?: Scope | null) => void;
3
5
  /**
4
6
  * A function passed as the fifth argument to a `PublicLinkFn` link function.
5
7
  * It behaves like a linking function, with the `scope` argument automatically created
@@ -8,7 +10,8 @@ import type { NodeRef } from "../../shared/noderef.js";
8
10
  * The function returns the DOM content to be injected (transcluded) into the directive.
9
11
  */
10
12
  export type TranscludeFn = {
11
- (clone?: Element | Node | ChildNode | NodeList | Node[], scope?: Scope): void;
13
+ (cb: TranscludeFnCb): void;
14
+ (scope: Scope, cb?: TranscludeFnCb): void;
12
15
  $$slots?: any;
13
16
  };
14
17
  /**
@@ -84,3 +87,4 @@ export type CompositeLinkFn = (
84
87
  $linkNode: NodeRef,
85
88
  parentBoundTranscludeFn?: Function,
86
89
  ) => void;
90
+ export {};
@@ -0,0 +1,11 @@
1
+ export interface StorageLike {
2
+ getItem(key: string): string | null;
3
+ setItem(key: string, value: string): void;
4
+ removeItem(key: string): void;
5
+ }
6
+ export interface PersistentStoreConfig {
7
+ backend?: StorageLike;
8
+ serialize?: (value: unknown) => string;
9
+ deserialize?: (value: string) => unknown;
10
+ cookie?: Record<string, unknown>;
11
+ }
@@ -53,4 +53,6 @@ export type ASTNode = {
53
53
  filter?: boolean;
54
54
  /** Indicates in node depends on non-shallow state of objects */
55
55
  isPure?: boolean;
56
+ /** Indicates the expression is a contant */
57
+ constant?: boolean;
56
58
  };
@@ -29,5 +29,8 @@ export class ParseProvider {
29
29
  identifierStart?: (arg0: any) => boolean,
30
30
  identifierContinue?: (arg0: any) => boolean,
31
31
  ) => ParseProvider;
32
- $get: (string | (($filter: (any: any) => any) => any))[];
32
+ $get: (
33
+ | string
34
+ | (($filter: (any: any) => any) => import("./interface.ts").ParseService)
35
+ )[];
33
36
  }
@@ -10,3 +10,29 @@ export interface Listener {
10
10
  watchProp?: string;
11
11
  foreignListener?: ProxyConstructor;
12
12
  }
13
+ export interface ScopeEvent {
14
+ /**
15
+ * the scope on which the event was $emit-ed or $broadcast-ed.
16
+ */
17
+ targetScope: ng.Scope;
18
+ /**
19
+ * the scope that is currently handling the event. Once the event propagates through the scope hierarchy, this property is set to null.
20
+ */
21
+ currentScope: ng.Scope;
22
+ /**
23
+ * name of the event.
24
+ */
25
+ name: string;
26
+ /**
27
+ * calling stopPropagation function will cancel further event propagation (available only for events that were $emit-ed).
28
+ */
29
+ stopPropagation?(): void;
30
+ /**
31
+ * calling preventDefault sets defaultPrevented flag to true.
32
+ */
33
+ preventDefault(): void;
34
+ /**
35
+ * true if preventDefault was called.
36
+ */
37
+ defaultPrevented: boolean;
38
+ }
@@ -5,10 +5,10 @@
5
5
  *
6
6
  * @param {Object} target - The object to be wrapped in a proxy.
7
7
  * @param {Scope} [context] - The context for the handler, used to track listeners.
8
- * @returns {Scope} - A proxy that intercepts operations on the target object,
8
+ * @returns {Scope|Object} - A proxy that intercepts operations on the target object,
9
9
  * or the original value if the target is not an object.
10
10
  */
11
- export function createScope(target?: any, context?: Scope): Scope;
11
+ export function createScope(target?: any, context?: Scope): Scope | any;
12
12
  /**
13
13
  * @ignore
14
14
  * Checks if a target should be excluded from scope observability
@@ -19,13 +19,13 @@ export function isNonScope(target: any): boolean;
19
19
  /** @ignore @type {Function[]}*/
20
20
  export const $postUpdateQueue: Function[];
21
21
  export class RootScopeProvider {
22
- rootScope: Scope;
22
+ rootScope: any;
23
23
  $get: (
24
24
  | string
25
25
  | ((
26
26
  exceptionHandler: ng.ExceptionHandlerService,
27
27
  parse: ng.ParseService,
28
- ) => Scope)
28
+ ) => any)
29
29
  )[];
30
30
  }
31
31
  /**
@@ -45,22 +45,14 @@ export class Scope {
45
45
  context: Scope;
46
46
  /** @type {Map<string, Array<import('./interface.ts').Listener>>} Watch listeners */
47
47
  watchers: Map<string, Array<import("./interface.ts").Listener>>;
48
- /** @type {Map<String, Function[]>} Event listeners */
49
- $$listeners: Map<string, Function[]>;
50
- /** @type {Map<string, Array<import('./interface.ts').Listener>>} Watch listeners from other proxies */
51
- foreignListeners: Map<string, Array<import("./interface.ts").Listener>>;
52
- /** @type {Set<Proxy<ng.Scope>>} */
53
- foreignProxies: Set<ProxyConstructor>;
54
- /** @type {WeakMap<Object, Array<string>>} */
55
- objectListeners: WeakMap<any, Array<string>>;
56
- /** @type {Map<Function, {oldValue: any, fn: Function}>} */
57
- functionListeners: Map<
58
- Function,
59
- {
60
- oldValue: any;
61
- fn: Function;
62
- }
63
- >;
48
+ /** @private @type {Map<String, Function[]>} Event listeners */
49
+ private _listeners;
50
+ /** @private @type {Map<string, Array<import('./interface.ts').Listener>>} Watch listeners from other proxies */
51
+ private _foreignListeners;
52
+ /** @private @type {Set<Proxy<ng.Scope>>} */
53
+ private _foreignProxies;
54
+ /** @private @type {WeakMap<Object, Array<string>>} */
55
+ private _objectListeners;
64
56
  /** @type {Proxy<Scope>} Current proxy being operated on */
65
57
  $proxy: ProxyConstructor;
66
58
  /** @type {Scope} The actual proxy */
@@ -82,10 +74,10 @@ export class Scope {
82
74
  */
83
75
  $root: Scope;
84
76
  $parent: Scope;
85
- filters: any[];
86
- /** @type {boolean} */
87
- $$destroyed: boolean;
88
- scheduled: any[];
77
+ /** @ignore @type {boolean} */
78
+ _destroyed: boolean;
79
+ /** @private @type {import("./interface.ts").Listener[]} A list of scheduled Event listeners */
80
+ private _scheduled;
89
81
  $scopename: any;
90
82
  /** @private */
91
83
  private propertyMap;
@@ -3,16 +3,14 @@
3
3
  */
4
4
  export function ngBindDirective(): ng.Directive;
5
5
  /**
6
- * @returns {import('../../interface.ts').Directive}
6
+ * @returns {ng.Directive}
7
7
  */
8
- export function ngBindTemplateDirective(): import("../../interface.ts").Directive;
8
+ export function ngBindTemplateDirective(): ng.Directive;
9
9
  /**
10
- * @param {import('../../core/parse/interface.ts').ParseService} $parse
11
- * @returns {import('../../interface.ts').Directive}
10
+ * @param {ng.ParseService} $parse
11
+ * @returns {ng.Directive}
12
12
  */
13
- export function ngBindHtmlDirective(
14
- $parse: import("../../core/parse/interface.ts").ParseService,
15
- ): import("../../interface.ts").Directive;
13
+ export function ngBindHtmlDirective($parse: ng.ParseService): ng.Directive;
16
14
  export namespace ngBindHtmlDirective {
17
15
  let $inject: string[];
18
16
  }
@@ -4,26 +4,26 @@ export function setupValidity(instance: any): void;
4
4
  * $nonscope: boolean,
5
5
  * $addControl: Function,
6
6
  * $getControls: () => any[],
7
- * $$renameControl: Function,
7
+ * _renameControl: Function,
8
8
  * $removeControl: Function,
9
9
  * $setValidity: Function | ((key: any, isValid: boolean, control: any) => any),
10
10
  * $setDirty: Function,
11
11
  * $setPristine: Function,
12
12
  * $setSubmitted: Function,
13
- * $$setSubmitted: Function
13
+ * _setSubmitted: Function
14
14
  * }}
15
15
  */
16
16
  export const nullFormCtrl: {
17
17
  $nonscope: boolean;
18
18
  $addControl: Function;
19
19
  $getControls: () => any[];
20
- $$renameControl: Function;
20
+ _renameControl: Function;
21
21
  $removeControl: Function;
22
22
  $setValidity: Function | ((key: any, isValid: boolean, control: any) => any);
23
23
  $setDirty: Function;
24
24
  $setPristine: Function;
25
25
  $setSubmitted: Function;
26
- $$setSubmitted: Function;
26
+ _setSubmitted: Function;
27
27
  };
28
28
  export const PENDING_CLASS: "ng-pending";
29
29
  /**
@@ -87,7 +87,7 @@ export class FormController {
87
87
  $animate: ng.AnimateService,
88
88
  $interpolate: ng.InterpolateService,
89
89
  );
90
- $$controls: any[];
90
+ _controls: any[];
91
91
  $name: string;
92
92
  /**
93
93
  * @property {boolean} $dirty True if user has already interacted with the form.
@@ -108,6 +108,7 @@ export class FormController {
108
108
  $$success: {};
109
109
  $pending: any;
110
110
  $$classCache: {};
111
+ $target: {};
111
112
  /**
112
113
  * Rollback all form controls pending updates to the `$modelValue`.
113
114
  *
@@ -154,9 +155,10 @@ export class FormController {
154
155
  * Likewise, adding a control to, or removing a control from the form is not reflected
155
156
  * in the shallow copy. That means you should get a fresh copy from `$getControls()` every time
156
157
  * you need access to the controls.
158
+ * @returns {ReadonlyArray<FormController>}
157
159
  */
158
- $getControls(): any;
159
- $$renameControl(control: any, newName: any): void;
160
+ $getControls(): ReadonlyArray<FormController>;
161
+ _renameControl(control: any, newName: any): void;
160
162
  /**
161
163
  * Deregister a control from the form.
162
164
  *
@@ -166,8 +168,9 @@ export class FormController {
166
168
  * form. `$dirty`, `$submitted` states will not be changed, because the expected behavior can be
167
169
  * different from case to case. For example, removing the only `$dirty` control from a form may or
168
170
  * may not mean that the form is still `$dirty`.
171
+ * @param {FormController } control
169
172
  */
170
- $removeControl(control: any): void;
173
+ $removeControl(control: FormController): void;
171
174
  /**
172
175
  * Sets the form to a dirty state.
173
176
  *
@@ -203,7 +206,7 @@ export class FormController {
203
206
  * parent forms of the form.
204
207
  */
205
208
  $setSubmitted(): void;
206
- $$setSubmitted(): void;
209
+ _setSubmitted(): void;
207
210
  set(object: any, property: any, controller: any): void;
208
211
  unset(object: any, property: any, controller: any): void;
209
212
  /**
@@ -1,4 +1,4 @@
1
1
  /**
2
- * @returns {import('../../interface.ts').Directive}
2
+ * @returns {ng.Directive}
3
3
  */
4
- export function ngInitDirective(): import("../../interface.ts").Directive;
4
+ export function ngInitDirective(): ng.Directive;
@@ -1,20 +1,9 @@
1
- export function weekParser(isoWeek: any, existingDate: any): any;
2
- export function createDateParser(
3
- regexp: any,
4
- mapping: any,
5
- ): (iso: any, previousDate: any) => any;
6
- export function createDateInputType(
7
- type: any,
8
- regexp: any,
9
- parseDate: any,
10
- ): (
11
- scope: any,
12
- element: any,
13
- attr: any,
14
- ctrl: any,
15
- $filter: any,
16
- $parse: any,
17
- ) => void;
1
+ /**
2
+ * @param {string} type
3
+ * @param {RegExp} regexp
4
+ * @returns {*}
5
+ */
6
+ export function createStringDateInputType(type: string, regexp: RegExp): any;
18
7
  export function badInputChecker(
19
8
  scope: any,
20
9
  element: any,
@@ -35,7 +24,6 @@ export function numberInputType(
35
24
  element: any,
36
25
  attr: any,
37
26
  ctrl: any,
38
- $filter: any,
39
27
  $parse: any,
40
28
  ): void;
41
29
  export function rangeInputType(
@@ -45,21 +33,17 @@ export function rangeInputType(
45
33
  ctrl: any,
46
34
  ): void;
47
35
  /**
48
- * @param {ng.FilterFactory} $filter
49
36
  * @param {ng.ParseService} $parse
50
37
  * @returns {ng.Directive}
51
38
  */
52
- export function inputDirective(
53
- $filter: ng.FilterFactory,
54
- $parse: ng.ParseService,
55
- ): ng.Directive;
39
+ export function inputDirective($parse: ng.ParseService): ng.Directive;
56
40
  export namespace inputDirective {
57
41
  let $inject: string[];
58
42
  }
59
43
  /**
60
44
  * @returns {ng.Directive}
61
45
  */
62
- export function hiddenInputBrowserCacheDirective(): ng.Directive;
46
+ export function hiddenInputDirective(): ng.Directive;
63
47
  /**
64
48
  * @returns {ng.Directive}
65
49
  */
@@ -0,0 +1,4 @@
1
+ /**
2
+ * @returns {ng.Directive}
3
+ */
4
+ export function ngListenerDirective(): ng.Directive;
@@ -0,0 +1,18 @@
1
+ export interface ModelValidators {
2
+ /**
3
+ * viewValue is any because it can be an object that is called in the view like $viewValue.name:$viewValue.subName
4
+ */
5
+ [index: string]: (modelValue: any, viewValue: any) => boolean;
6
+ }
7
+ export interface AsyncModelValidators {
8
+ [index: string]: (modelValue: any, viewValue: any) => Promise<any>;
9
+ }
10
+ export interface ModelParser {
11
+ (value: any): any;
12
+ }
13
+ export interface ModelFormatter {
14
+ (value: any): any;
15
+ }
16
+ export interface ModelViewChangeListener {
17
+ (): void;
18
+ }
@@ -72,16 +72,16 @@ export class NgModelController {
72
72
  $modelValue: any;
73
73
  /** @type {any} */
74
74
  $$rawModelValue: any;
75
- /** @type {any} */
76
- $validators: any;
77
- /** @type {any} */
78
- $asyncValidators: any;
79
- /** @type {Array<any>} */
80
- $parsers: Array<any>;
81
- /** @type {Array<any>} */
82
- $formatters: Array<any>;
83
- /** @type {Array<any>} */
84
- $viewChangeListeners: Array<any>;
75
+ /** @type {import("./interface.ts").ModelValidators} */
76
+ $validators: import("./interface.ts").ModelValidators;
77
+ /** @type {import("./interface.ts").AsyncModelValidators} */
78
+ $asyncValidators: import("./interface.ts").AsyncModelValidators;
79
+ /** @type {Array<import("./interface.ts").ModelParser>} */
80
+ $parsers: Array<import("./interface.ts").ModelParser>;
81
+ /** @type {Array<import("./interface.ts").ModelFormatter>} */
82
+ $formatters: Array<import("./interface.ts").ModelFormatter>;
83
+ /** @type {Array<import("./interface.ts").ModelViewChangeListener>} */
84
+ $viewChangeListeners: Array<import("./interface.ts").ModelViewChangeListener>;
85
85
  /** @type {boolean} */
86
86
  $untouched: boolean;
87
87
  /** @type {boolean} */
@@ -102,7 +102,7 @@ export class NgModelController {
102
102
  $nonscope: boolean;
103
103
  $addControl: Function;
104
104
  $getControls: () => any[];
105
- $$renameControl: Function;
105
+ _renameControl: Function;
106
106
  $removeControl: Function;
107
107
  $setValidity:
108
108
  | Function
@@ -110,7 +110,7 @@ export class NgModelController {
110
110
  $setDirty: Function;
111
111
  $setPristine: Function;
112
112
  $setSubmitted: Function;
113
- $$setSubmitted: Function;
113
+ _setSubmitted: Function;
114
114
  };
115
115
  $options: {
116
116
  $$options: import("../model-options/model-options.js").ModelOptionsConfig;
@@ -125,16 +125,16 @@ export class NgModelController {
125
125
  };
126
126
  $$updateEvents: string;
127
127
  $$updateEventHandler(ev: any): void;
128
- $$parsedNgModel: import("../../core/parse/interface.ts").CompiledExpression;
129
- $$parsedNgModelAssign: (context: any, value: any) => any;
128
+ _parsedNgModel: import("../../core/parse/interface.ts").CompiledExpression;
129
+ _parsedNgModelAssign: (context: any, value: any) => any;
130
130
  /**
131
131
  * @type {import("../../core/parse/interface.ts").CompiledExpression |
132
132
  * (function(ng.Scope): any)}
133
133
  */
134
- $$ngModelGet:
134
+ _ngModelGet:
135
135
  | import("../../core/parse/interface.ts").CompiledExpression
136
136
  | ((arg0: ng.Scope) => any);
137
- $$ngModelSet: (context: any, value: any) => any;
137
+ _ngModelSet: (context: any, value: any) => any;
138
138
  $$pendingDebounce: number;
139
139
  $$parserValid: boolean;
140
140
  /** @type {string} */
@@ -398,10 +398,12 @@ export class NgModelController {
398
398
  * **Note:** it is not possible to override the `getterSetter` option.
399
399
  * </div>
400
400
  *
401
- * @param {Object} options a hash of settings to override the previous options
401
+ * @param {import("../../interface.ts").NgModelOptions} options a hash of settings to override the previous options
402
402
  *
403
403
  */
404
- $overrideModelOptions(options: any): void;
404
+ $overrideModelOptions(
405
+ options: import("../../interface.ts").NgModelOptions,
406
+ ): void;
405
407
  /**
406
408
  * Runs the model -> view pipeline on the current
407
409
  * {@link ngModel.NgModelController#$modelValue $modelValue}.
@@ -1,4 +1,4 @@
1
1
  /**
2
- * @returns {import('../../interface.ts').Directive}
2
+ * @returns {ng.Directive}
3
3
  */
4
- export function ngNonBindableDirective(): import("../../interface.ts").Directive;
4
+ export function ngNonBindableDirective(): ng.Directive;
@@ -1,7 +1,7 @@
1
1
  /**
2
- * @returns {import('../../interface.ts').Directive}
2
+ * @returns {ng.Directive}
3
3
  */
4
- export function selectDirective(): import("../../interface.ts").Directive;
4
+ export function selectDirective(): ng.Directive;
5
5
  /**
6
6
  * @param {ng.InterpolateService} $interpolate
7
7
  * @returns {ng.Directive}
@@ -1,12 +1,12 @@
1
1
  /**
2
2
  * @param {ng.ParseService} $parse
3
3
  * @param {ng.LogService} $log
4
- * @returns {import('interface.ts').Directive}
4
+ * @returns {ng.Directive}
5
5
  */
6
6
  export function ngSetterDirective(
7
7
  $parse: ng.ParseService,
8
8
  $log: ng.LogService,
9
- ): any;
9
+ ): ng.Directive;
10
10
  export namespace ngSetterDirective {
11
11
  let $inject: string[];
12
12
  }
@@ -7,11 +7,10 @@ export namespace ngShowDirective {
7
7
  let $inject: string[];
8
8
  }
9
9
  /**
10
- * @returns {import('../../interface.ts').Directive}
10
+ * @param {ng.AnimateService} $animate
11
+ * @returns {ng.Directive}
11
12
  */
12
- export function ngHideDirective(
13
- $animate: any,
14
- ): import("../../interface.ts").Directive;
13
+ export function ngHideDirective($animate: ng.AnimateService): ng.Directive;
15
14
  export namespace ngHideDirective {
16
15
  let $inject_1: string[];
17
16
  export { $inject_1 as $inject };
@@ -7,10 +7,10 @@ export namespace ngSwitchDirective {
7
7
  let $inject: string[];
8
8
  }
9
9
  /**
10
- * @returns {import('../../interface.ts').Directive}
10
+ * @returns {ng.Directive}
11
11
  */
12
- export function ngSwitchWhenDirective(): import("../../interface.ts").Directive;
12
+ export function ngSwitchWhenDirective(): ng.Directive;
13
13
  /**
14
- * @returns {import('../../interface.ts').Directive}
14
+ * @returns {ng.Directive}
15
15
  */
16
- export function ngSwitchDefaultDirective(): import("../../interface.ts").Directive;
16
+ export function ngSwitchDefaultDirective(): ng.Directive;
@@ -1,6 +1,9 @@
1
1
  import { Attributes } from "./core/compile/attributes.js";
2
2
  import { Scope } from "./core/scope/scope.js";
3
3
  import { NgModelController } from "./directive/model/model.js";
4
+ export interface Constructor<T = any> {
5
+ new (...args: any[]): T;
6
+ }
4
7
  export declare const PublicInjectionTokens: {
5
8
  readonly $angular: "$angular";
6
9
  readonly $attrs: "$attrs";
@@ -376,7 +379,7 @@ export interface DirectivePrePost {
376
379
  * A link function executed during directive linking.
377
380
  */
378
381
  export type DirectiveLinkFn<T> = (
379
- scope: Scope,
382
+ scope: ng.Scope,
380
383
  element: HTMLElement,
381
384
  attrs: ng.Attributes,
382
385
  controller?: TController<T>,
@@ -462,6 +465,24 @@ export type CloneAttachFunction = (
462
465
  clonedElement?: Element,
463
466
  scope?: Scope,
464
467
  ) => any;
468
+ export interface TemplateLinkingFunction {
469
+ (
470
+ scope: ng.Scope,
471
+ cloneAttachFn?: CloneAttachFunction,
472
+ options?: TemplateLinkingFunctionOptions,
473
+ ): Element;
474
+ }
475
+ export interface TemplateLinkingFunctionOptions {
476
+ parentBoundTranscludeFn?: TranscludeFunctionObject | undefined;
477
+ transcludeControllers?:
478
+ | {
479
+ [controller: string]: {
480
+ instance: Controller;
481
+ };
482
+ }
483
+ | undefined;
484
+ futureParentElement?: Element | undefined;
485
+ }
465
486
  /**
466
487
  * Configuration for ngModel behavior.
467
488
  */