Skip to content

Commit 3ff1245

Browse files
committed
wip
1 parent aa9e6e6 commit 3ff1245

File tree

3 files changed

+43
-17
lines changed

3 files changed

+43
-17
lines changed

packages/signals/signals-runtime/editor/web-editor.d.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,10 @@ type JSONObject = {
1818
};
1919
type JSONArray = JSONValue[];
2020
interface SegmentEvent {
21-
type: string;
21+
type: EventType;
2222
[key: string]: any;
2323
}
24+
type EventType = "track" | "page" | "screen" | "identify" | "group" | "alias";
2425
type WebSignalTypes = WebSignal["type"];
2526
interface WebAppSignal<T extends WebSignalTypes, Data> extends BaseSignal {
2627
type: T;
Lines changed: 32 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,26 @@
11
import { BaseSignal } from '../shared/shared-types'
2-
32
export type MobileSignalTypes = MobileSignal['type']
43

4+
export type MobileSignalType = MobileSignal['type']
5+
6+
export type MobileNavigationAction =
7+
| 'forward'
8+
| 'backward'
9+
| 'modal'
10+
| 'entering'
11+
| 'leaving'
12+
| 'page'
13+
| 'popup'
14+
15+
export type NetworkAction = 'request' | 'response'
16+
17+
export type LocalDataAction =
18+
| 'loaded'
19+
| 'updated'
20+
| 'saved'
21+
| 'deleted'
22+
| 'undefined'
23+
524
export type MobileSignal =
625
| MobileInteractionSignal
726
| MobileNavigationSignal
@@ -10,20 +29,20 @@ export type MobileSignal =
1029
| MobileInstrumentationSignal
1130
| MobileUserDefinedSignal
1231

13-
interface MobileRawSignal extends BaseSignal {
32+
interface MobileRawSignal<SignalType extends string> extends BaseSignal {
33+
type: SignalType
1434
anonymousId: string
15-
type: string
1635
data: any
1736
timestamp: string
1837
index: any
1938
}
2039

2140
interface MobileNavigationData {
22-
action: string
41+
action: MobileNavigationAction
2342
screen: string
2443
}
2544

26-
interface MobileNavigationSignal extends MobileRawSignal {
45+
interface MobileNavigationSignal extends MobileRawSignal<'navigation'> {
2746
data: MobileNavigationData
2847
}
2948

@@ -33,35 +52,32 @@ interface MobileInteractionData {
3352
data: any
3453
}
3554

36-
interface MobileInteractionSignal extends MobileRawSignal {
55+
interface MobileInteractionSignal extends MobileRawSignal<'interaction'> {
3756
type: 'interaction'
3857
data: MobileInteractionData
3958
}
4059

4160
interface MobileNetworkData {
42-
action: string
61+
action: NetworkAction
4362
url: string
4463
data: any
4564
}
4665

47-
interface MobileNetworkSignal extends MobileRawSignal {
48-
static: 'network'
66+
interface MobileNetworkSignal extends MobileRawSignal<'network'> {
4967
data: MobileNetworkData
5068
}
5169

5270
interface MobileLocalData {
53-
action: string
71+
action: LocalDataAction
5472
identifier: string
5573
data: string
5674
}
5775

58-
interface MobileLocalDataSignal extends MobileRawSignal {
59-
type: 'localData'
76+
interface MobileLocalDataSignal extends MobileRawSignal<'localData'> {
6077
data: MobileLocalData
6178
}
6279

63-
interface MobileUserDefinedSignal extends MobileRawSignal {
64-
type: 'userDefined'
80+
interface MobileUserDefinedSignal extends MobileRawSignal<'userDefined'> {
6581
data: any
6682
}
6783

@@ -70,6 +86,7 @@ interface MobileInstrumentationData {
7086
rawEvent: any
7187
}
7288

73-
interface MobileInstrumentationSignal extends MobileRawSignal {
89+
interface MobileInstrumentationSignal
90+
extends MobileRawSignal<'instrumentation'> {
7491
data: MobileInstrumentationData
7592
}

packages/signals/signals-runtime/src/shared/shared-types.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,14 @@ export type JSONObject = { [member: string]: JSONValue }
2121
export type JSONArray = JSONValue[]
2222

2323
export interface SegmentEvent {
24-
type: string // e.g 'track'
24+
type: EventType // e.g 'track'
2525
[key: string]: any
2626
}
27+
28+
export type EventType =
29+
| 'track'
30+
| 'page'
31+
| 'screen'
32+
| 'identify'
33+
| 'group'
34+
| 'alias'

0 commit comments

Comments
 (0)