export interface SystemInitialiseValue { appName: string; appVersion: string; vendor: string; partnerSdkVersion: string; } export interface SystemEventValue { name: string; data: unknown; } export type SystemAction = "initialise" | "sendMessage" | "getContext" | "getLocale" | "getTheme" | "getVersion" | "getEvents" | "sendEvent"; export type SystemMessage = { action: "initialise"; namespace: "system"; value: SystemInitialiseValue; } | { action: "sendEvent"; namespace: "system"; value: SystemEventValue; } | { action: "getVersion"; namespace: "system"; value: string; } | { action: "sendMessage"; namespace: "system"; value: string; } | { action: "getContext"; namespace: "system"; } | { action: "getLocale"; namespace: "system"; } | { action: "getTheme"; namespace: "system"; } | { action: "getEvents"; namespace: "system"; }; export interface SystemData { type: "request"; message: SystemMessage; }