@unbound-app/api 0.8.3 → 0.8.4

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unbound-app/api",
3
- "version": "0.8.3",
3
+ "version": "0.8.4",
4
4
  "author": {
5
5
  "name": "Mario P.",
6
6
  "email": "contact@marioparaschiv.com",
package/src/storage.d.ts CHANGED
@@ -1,8 +1,90 @@
1
1
  // Auto-generated by generate-plugin-sdk.ts - DO NOT EDIT
2
2
 
3
- import type { EventEmitter } from './tseep';
4
3
  import type { PredicateResult, Widen } from './utils';
5
4
  import type { SettingsValue } from './_internal';
5
+ declare class EventEmitter<EventMap extends DefaultEventMap = DefaultEventMap> {
6
+ events: EventCollections<EventMap>;
7
+ onceEvents: OnceCollections<EventMap>;
8
+ _symbolKeys: Set<symbol>;
9
+ maxListeners: number;
10
+ boundFuncs: undefined | Map<Listener, Listener>;
11
+ emit: <EventKey extends keyof EventMap>(
12
+ event: EventKey,
13
+ ...args: Parameters<EventMap[EventKey]>
14
+ ) => boolean;
15
+ on: <EventKey extends keyof EventMap = string>(
16
+ event: EventKey,
17
+ listener: EventMap[EventKey],
18
+ ) => this;
19
+ once: <EventKey extends keyof EventMap = string>(
20
+ event: EventKey,
21
+ listener: EventMap[EventKey],
22
+ ) => this;
23
+ addListener: <EventKey extends keyof EventMap = string>(
24
+ event: EventKey,
25
+ listener: EventMap[EventKey],
26
+ argsNum?: ArgsNum<EventMap[EventKey]>,
27
+ ) => this;
28
+ removeListener: <EventKey extends keyof EventMap = string>(
29
+ event: EventKey,
30
+ listener: EventMap[EventKey],
31
+ ) => this;
32
+ hasListeners: <EventKey extends keyof EventMap = string>(event: EventKey) => boolean;
33
+ prependListener: <EventKey extends keyof EventMap = string>(
34
+ event: EventKey,
35
+ listener: EventMap[EventKey],
36
+ ) => this;
37
+ prependOnceListener: <EventKey extends keyof EventMap = string>(
38
+ event: EventKey,
39
+ listener: EventMap[EventKey],
40
+ ) => this;
41
+ off: <EventKey extends keyof EventMap = string>(
42
+ event: EventKey,
43
+ listener: EventMap[EventKey],
44
+ ) => this;
45
+ removeAllListeners: <EventKey extends keyof EventMap = string>(event?: EventKey) => this;
46
+ setMaxListeners: (n: number) => this;
47
+ getMaxListeners: () => number;
48
+ listeners: <EventKey extends keyof EventMap = string>(event: EventKey) => EventMap[EventKey][];
49
+ rawListeners: <EventKey extends keyof EventMap = string>(
50
+ event: EventKey,
51
+ ) => EventMap[EventKey][];
52
+ eventNames: () => Array<string | symbol>;
53
+ listenerCount: <EventKey extends keyof EventMap = string>(type: EventKey) => number;
54
+ addListenerBound: <EventKey extends keyof EventMap = string>(
55
+ event: EventKey,
56
+ listener: EventMap[EventKey],
57
+ bindTo?: unknown,
58
+ argsNum?: ArgsNum<EventMap[EventKey]>,
59
+ ) => this;
60
+ removeListenerBound: <EventKey extends keyof EventMap = string>(
61
+ event: EventKey,
62
+ listener: EventMap[EventKey],
63
+ ) => this;
64
+ /**
65
+ * @description Creates an emitter with no listeners.
66
+ */
67
+ constructor();
68
+ get _eventsCount(): number;
69
+ }
70
+ declare class TaskCollection<Func extends Listener = Listener> {
71
+ argsNum: number;
72
+ _tasks: Tasks<Func>;
73
+ length: number;
74
+ call: (...args: Parameters<Func>) => void;
75
+ /**
76
+ * @description Creates a collection holding a single listener.
77
+ * @param argsNum How many arguments each listener receives when more than one is registered.
78
+ * @param task The first listener.
79
+ */
80
+ constructor(argsNum: number, task: Func);
81
+ push(task: Func): void;
82
+ insert(index: number, task: Func): void;
83
+ removeLast(task: Func): void;
84
+ growArgsNum(argsNum: number): void;
85
+ rebuild(): void;
86
+ tasksAsArray(): Func[];
87
+ }
6
88
  declare const _default: {
7
89
  addListener: typeof addListener;
8
90
  get: typeof get;
@@ -21,11 +103,6 @@ declare const _default: {
21
103
  set: typeof set;
22
104
  useSettingsStore: typeof useSettingsStore;
23
105
  };
24
- /**
25
- * @description Removes an entire store and all of its keys, and emits `changed` and `cleared`.
26
- * @param store The store to clear.
27
- */
28
- declare function clear$1(store: string): void;
29
106
  export declare const off: <EventKey extends keyof EventMap = string>(
30
107
  event: EventKey,
31
108
  listener: EventMap[EventKey],
@@ -44,6 +121,11 @@ export declare function addListener(
44
121
  predicate: (payload: SettingsPayload) => PredicateResult,
45
122
  callback: (payload: SettingsPayload) => void,
46
123
  ): () => void;
124
+ /**
125
+ * @description Removes an entire store and all of its keys, and emits `changed` and `cleared`.
126
+ * @param store The store to clear.
127
+ */
128
+ export declare function clear(store: string): void;
47
129
  /**
48
130
  * @description Reads a value from a store by dot-separated key path, falling back to a default when absent.
49
131
  * @template T The type of the default value.
@@ -120,9 +202,18 @@ export declare function useSettingsStore(
120
202
  toggle: (key: string, def: boolean) => void;
121
203
  remove: (key: string) => void;
122
204
  };
205
+ /** The declared parameter count of a listener. */
206
+ export type ArgsNum<T extends Listener> = Parameters<T>['length'];
123
207
  export type ClearedPayload = {
124
208
  store: string;
125
209
  };
210
+ /** The event map of an untyped emitter. `__proto__` is reserved, as in tseep. */
211
+ export type DefaultEventMap = Record<string | symbol, Listener> & {
212
+ __proto__?: never;
213
+ };
214
+ export type EventCollections<EventMap extends DefaultEventMap> = {
215
+ [eventName in keyof EventMap]?: TaskCollection<EventMap[eventName]>;
216
+ };
126
217
  export type EventMap = {
127
218
  set: (payload: SetPayload) => void;
128
219
  changed: (payload: SettingsPayload) => void;
@@ -130,6 +221,11 @@ export type EventMap = {
130
221
  removed: (payload: RemovedPayload) => void;
131
222
  toggled: (payload: ToggledPayload) => void;
132
223
  };
224
+ /** Any event listener. tseep's `any[]` parameters become `never[]`, which accepts every listener. */
225
+ export type Listener = (...args: never[]) => Promise<unknown> | void;
226
+ export type OnceCollections<EventMap extends DefaultEventMap> = {
227
+ [eventName in keyof EventMap]?: EventMap[eventName][] | EventMap[eventName];
228
+ };
133
229
  export type RemovedPayload = {
134
230
  store: string;
135
231
  key: string;
@@ -145,12 +241,13 @@ export type SettingsPayload = {
145
241
  key: string | null;
146
242
  value: SettingsValue | undefined;
147
243
  };
244
+ export type Tasks<Func> = Func[] | Func | null;
148
245
  export type ToggledPayload = {
149
246
  store: string;
150
247
  key: string;
151
248
  prev: boolean;
152
249
  value: boolean;
153
250
  };
154
- export { _default as default, clear$1 as clear };
251
+ export { _default as default };
155
252
 
156
253
  export {};
package/src/tseep.d.ts DELETED
@@ -1,180 +0,0 @@
1
- // Auto-generated by generate-plugin-sdk.ts - DO NOT EDIT
2
-
3
- import * as ReactModule from 'react';
4
- import * as ReactNativeModule from 'react-native';
5
-
6
- declare class TaskCollection<
7
- Func extends (...args: any) => void,
8
- AwaitTasks extends true | false = false,
9
- > {
10
- readonly awaitTasks: AwaitTasks;
11
- constructor(
12
- argsNum: ArgsNum<Func>,
13
- autoRebuild?: boolean,
14
- initialTasks?: Func[] | Func | null,
15
- awaitTasks?: AwaitTasks,
16
- );
17
- /** DO NOT CHANGE DIRECTLY */
18
- _tasks: Func[] | Func | null;
19
- /** cached */
20
- length: number;
21
- /** auto rebuild on first emit call; otherwise autorebuild on every change */
22
- firstEmitBuildStrategy: boolean;
23
- readonly argsNum: ArgsNum<Func>;
24
- autoRebuild: boolean;
25
- readonly growArgsNum: typeof growArgsNum;
26
- setAutoRebuild: typeof setAutoRebuild;
27
- call: (...args: Parameters<Func>) => AwaitTasks extends true ? Promise<void> : void;
28
- rebuild: () => void;
29
- push: (...func: Func[]) => void;
30
- /** remove last matched task from tasks */
31
- removeLast: (func: Func) => void;
32
- insert: (index: number, ...func: Func[]) => void;
33
- setTasks: (tasks: Func[]) => void;
34
- tasksAsArray: () => Func[];
35
- /** this autorebuilds */
36
- readonly clear: typeof clear;
37
- /** this autorebuilds */
38
- readonly fastClear: typeof fastClear;
39
- }
40
- declare function clear<
41
- Func extends (...args: any) => void,
42
- AwaitTasks extends true | false = false,
43
- >(this: TaskCollection<Func, AwaitTasks>): void;
44
- declare function fastClear<
45
- Func extends (...args: any) => void,
46
- AwaitTasks extends true | false = false,
47
- >(this: TaskCollection<Func, AwaitTasks>): void;
48
- declare function growArgsNum<
49
- Func extends (...args: any) => void,
50
- AwaitTasks extends true | false = false,
51
- >(this: TaskCollection<Func, AwaitTasks>, argsNum: number): void;
52
- declare function setAutoRebuild<
53
- Func extends (...args: any) => void,
54
- AwaitTasks extends true | false = false,
55
- >(this: TaskCollection<Func, AwaitTasks>, newVal: boolean): void;
56
-
57
- /** Implemented event emitter */
58
- export declare class EventEmitter<
59
- EventMap extends DefaultEventMap = DefaultEventMap,
60
- > implements IEventEmitter<EventMap> {
61
- events: {
62
- [eventName in keyof EventMap]?: TaskCollection<EventMap[eventName]>;
63
- };
64
- onceEvents: {
65
- [eventName in keyof EventMap]?: EventMap[eventName][] | EventMap[eventName];
66
- };
67
- boundFuncs: undefined | Map<Function, Function>;
68
- _symbolKeys: Set<symbol>;
69
- maxListeners: number;
70
- get _eventsCount(): number;
71
- emit: <EventKey extends keyof EventMap>(
72
- event: EventKey,
73
- ...args: Parameters<EventMap[EventKey]>
74
- ) => boolean;
75
- on: <EventKey extends keyof EventMap = string>(
76
- event: EventKey,
77
- listener: EventMap[EventKey],
78
- ) => this;
79
- once: <EventKey extends keyof EventMap = string>(
80
- event: EventKey,
81
- listener: EventMap[EventKey],
82
- ) => this;
83
- addListener: <EventKey extends keyof EventMap = string>(
84
- event: EventKey,
85
- listener: EventMap[EventKey],
86
- argsNum?: ArgsNum<EventMap[EventKey]>,
87
- ) => this;
88
- removeListener: <EventKey extends keyof EventMap = string>(
89
- event: EventKey,
90
- listener: EventMap[EventKey],
91
- ) => this;
92
- hasListeners: <EventKey extends keyof EventMap = string>(event: EventKey) => boolean;
93
- prependListener: <EventKey extends keyof EventMap = string>(
94
- event: EventKey,
95
- listener: EventMap[EventKey],
96
- ) => this;
97
- prependOnceListener: <EventKey extends keyof EventMap = string>(
98
- event: EventKey,
99
- listener: EventMap[EventKey],
100
- ) => this;
101
- off: <EventKey extends keyof EventMap = string>(
102
- event: EventKey,
103
- listener: EventMap[EventKey],
104
- ) => this;
105
- removeAllListeners: <EventKey extends keyof EventMap = string>(event?: EventKey) => this;
106
- setMaxListeners: (n: number) => this;
107
- getMaxListeners: () => number;
108
- listeners: <EventKey extends keyof EventMap = string>(event: EventKey) => EventMap[EventKey][];
109
- rawListeners: <EventKey extends keyof EventMap = string>(
110
- event: EventKey,
111
- ) => EventMap[EventKey][];
112
- eventNames: () => Array<string | symbol>;
113
- listenerCount: <EventKey extends keyof EventMap = string>(type: EventKey) => number;
114
- addListenerBound: <EventKey extends keyof EventMap = string>(
115
- event: EventKey,
116
- listener: EventMap[EventKey],
117
- bindTo?: any,
118
- argsNum?: ArgsNum<EventMap[EventKey]>,
119
- ) => this;
120
- removeListenerBound: <EventKey extends keyof EventMap = string>(
121
- event: EventKey,
122
- listener: EventMap[EventKey],
123
- ) => this;
124
- }
125
- export interface IEventEmitter<EventMap extends DefaultEventMap = DefaultEventMap> {
126
- emit<EventKey extends keyof EventMap>(
127
- event: EventKey,
128
- ...args: Parameters<EventMap[EventKey]>
129
- ): boolean;
130
- on<EventKey extends keyof EventMap = string>(
131
- event: EventKey,
132
- listener: EventMap[EventKey],
133
- ): this;
134
- once<EventKey extends keyof EventMap = string>(
135
- event: EventKey,
136
- listener: EventMap[EventKey],
137
- ): this;
138
- addListener<EventKey extends keyof EventMap = string>(
139
- event: EventKey,
140
- listener: EventMap[EventKey],
141
- ): this;
142
- removeListener<EventKey extends keyof EventMap = string>(
143
- event: EventKey,
144
- listener: EventMap[EventKey],
145
- ): this;
146
- prependListener<EventKey extends keyof EventMap = string>(
147
- event: EventKey,
148
- listener: EventMap[EventKey],
149
- ): this;
150
- prependOnceListener<EventKey extends keyof EventMap = string>(
151
- event: EventKey,
152
- listener: EventMap[EventKey],
153
- ): this;
154
- off<EventKey extends keyof EventMap = string>(
155
- event: EventKey,
156
- listener: EventMap[EventKey],
157
- ): this;
158
- removeAllListeners<EventKey extends keyof EventMap = string>(event?: EventKey): this;
159
- setMaxListeners(n: number): this;
160
- getMaxListeners(): number;
161
- listeners<EventKey extends keyof EventMap = string>(event: EventKey): EventMap[EventKey][];
162
- rawListeners<EventKey extends keyof EventMap = string>(event: EventKey): EventMap[EventKey][];
163
- eventNames(): Array<string | symbol>;
164
- listenerCount<EventKey extends keyof EventMap = string>(type: EventKey): number;
165
- }
166
- export type ArgsNum<T extends (...args: any[]) => any> = T extends (...args: infer K) => any
167
- ? K['length']
168
- : never;
169
- export type DefaultEventMap = {
170
- [event in string | symbol]: Listener;
171
- } & {
172
- /**
173
- * __proto__ key not allowed due to implementation
174
- * add prefix, if you want to use this keyword
175
- */
176
- __proto__?: never;
177
- };
178
- export type Listener = (...args: any[]) => Promise<any> | void;
179
-
180
- export {};