@multitapio/multitap 0.0.17 → 0.0.19

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 (60) hide show
  1. package/dist/channel.d.ts +6 -6
  2. package/dist/channel.d.ts.map +1 -1
  3. package/dist/crypto.d.ts +12 -0
  4. package/dist/crypto.d.ts.map +1 -1
  5. package/dist/input-graph.d.ts +2 -0
  6. package/dist/input-graph.d.ts.map +1 -1
  7. package/dist/lib.js +268 -118
  8. package/dist/react/components/SyncLoadingScreen.d.ts +27 -0
  9. package/dist/react/components/SyncLoadingScreen.d.ts.map +1 -0
  10. package/dist/react/components/SyncStatusIndicator.d.ts +15 -0
  11. package/dist/react/components/SyncStatusIndicator.d.ts.map +1 -0
  12. package/dist/react/components/index.d.ts +3 -0
  13. package/dist/react/components/index.d.ts.map +1 -0
  14. package/dist/react/hooks/usePlayers.d.ts +2 -0
  15. package/dist/react/hooks/usePlayers.d.ts.map +1 -1
  16. package/dist/react/hooks/useSyncStatus.d.ts +18 -0
  17. package/dist/react/hooks/useSyncStatus.d.ts.map +1 -0
  18. package/dist/react/index.d.ts +2 -0
  19. package/dist/react/index.d.ts.map +1 -1
  20. package/dist/react/providers/ParticipantProvider.d.ts +51 -0
  21. package/dist/react/providers/ParticipantProvider.d.ts.map +1 -0
  22. package/dist/react/providers/SessionProvider.d.ts.map +1 -1
  23. package/dist/react/providers/index.d.ts +2 -0
  24. package/dist/react/providers/index.d.ts.map +1 -1
  25. package/dist/react/stores/syncStatusStore.d.ts +6 -0
  26. package/dist/react/stores/syncStatusStore.d.ts.map +1 -0
  27. package/dist/react/types/session.d.ts +4 -7
  28. package/dist/react/types/session.d.ts.map +1 -1
  29. package/dist/session.d.ts +24 -7
  30. package/dist/session.d.ts.map +1 -1
  31. package/dist/types/channel.d.ts +6 -6
  32. package/dist/types/channel.d.ts.map +1 -1
  33. package/dist/types/crypto.d.ts +12 -0
  34. package/dist/types/crypto.d.ts.map +1 -1
  35. package/dist/types/input-graph.d.ts +2 -0
  36. package/dist/types/input-graph.d.ts.map +1 -1
  37. package/dist/types/react/components/SyncLoadingScreen.d.ts +27 -0
  38. package/dist/types/react/components/SyncLoadingScreen.d.ts.map +1 -0
  39. package/dist/types/react/components/SyncStatusIndicator.d.ts +15 -0
  40. package/dist/types/react/components/SyncStatusIndicator.d.ts.map +1 -0
  41. package/dist/types/react/components/index.d.ts +3 -0
  42. package/dist/types/react/components/index.d.ts.map +1 -0
  43. package/dist/types/react/hooks/usePlayers.d.ts +2 -0
  44. package/dist/types/react/hooks/usePlayers.d.ts.map +1 -1
  45. package/dist/types/react/hooks/useSyncStatus.d.ts +18 -0
  46. package/dist/types/react/hooks/useSyncStatus.d.ts.map +1 -0
  47. package/dist/types/react/index.d.ts +2 -0
  48. package/dist/types/react/index.d.ts.map +1 -1
  49. package/dist/types/react/providers/ParticipantProvider.d.ts +51 -0
  50. package/dist/types/react/providers/ParticipantProvider.d.ts.map +1 -0
  51. package/dist/types/react/providers/SessionProvider.d.ts.map +1 -1
  52. package/dist/types/react/providers/index.d.ts +2 -0
  53. package/dist/types/react/providers/index.d.ts.map +1 -1
  54. package/dist/types/react/stores/syncStatusStore.d.ts +6 -0
  55. package/dist/types/react/stores/syncStatusStore.d.ts.map +1 -0
  56. package/dist/types/react/types/session.d.ts +4 -7
  57. package/dist/types/react/types/session.d.ts.map +1 -1
  58. package/dist/types/session.d.ts +24 -7
  59. package/dist/types/session.d.ts.map +1 -1
  60. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSyncStatus.d.ts","sourceRoot":"","sources":["../../../../src/react/hooks/useSyncStatus.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAUnD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAe1C"}
@@ -2,6 +2,8 @@
2
2
  * React components for Multitap games
3
3
  */
4
4
  export { SessionProvider, SessionContext, useSessionContext } from './providers';
5
+ export { ParticipantProvider, useParticipantContext, useCurrentPlayerId, useSendInput } from './providers';
6
+ export type { ParticipantContextValue, ParticipantProviderProps } from './providers';
5
7
  export { useSession, useFrame, useQuery, useQueryMask, usePlayers, useCurrentPlayer, useEvent } from './hooks';
6
8
  export type { CapturedEvent, UseEventOptions } from './hooks';
7
9
  export type { Player, PlayerStore, EntityStore, SessionContextValue, SessionProviderProps, ReactSessionInterface, ReactCreateSession, UseSessionRenderCallback, QuerySelector, QuerySelectorContext, } from './types/session';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAGhF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC9G,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAG7D,YAAY,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,oBAAoB,GACrB,MAAM,iBAAiB,CAAA;AAQxB,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAG7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,YAAY,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,GAClB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAGrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAC5C,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGpF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,aAAa,EACb,OAAO,GACR,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAChF,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC1G,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAGpF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC9G,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAG7D,YAAY,EACV,MAAM,EACN,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,EACxB,aAAa,EACb,oBAAoB,GACrB,MAAM,iBAAiB,CAAA;AAQxB,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,IAAI,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAG7E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAGvC,YAAY,EACV,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,cAAc,EACd,iBAAiB,GAClB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAGrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA;AAC5C,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAGpF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,UAAU,EACV,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,aAAa,EACb,OAAO,GACR,MAAM,SAAS,CAAA;AAChB,YAAY,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA"}
@@ -0,0 +1,51 @@
1
+ import type { JoinOptions } from '../../session';
2
+ /**
3
+ * Context value provided by ParticipantProvider
4
+ */
5
+ export interface ParticipantContextValue {
6
+ /** Send input to the session */
7
+ sendInput: (input: Uint8Array) => void;
8
+ /** Current player's public key as hex string */
9
+ currentPlayerId: string;
10
+ /** Whether the player has successfully joined the session */
11
+ isJoined: boolean;
12
+ }
13
+ /**
14
+ * Props for ParticipantProvider component
15
+ */
16
+ export interface ParticipantProviderProps {
17
+ /** Player's private key for signing inputs */
18
+ playerKey: Uint8Array;
19
+ /** Options for joining (e.g., enableP2P) */
20
+ joinOptions?: JoinOptions;
21
+ children: React.ReactNode;
22
+ }
23
+ /**
24
+ * ParticipantProvider - manages joining a session and sending inputs
25
+ *
26
+ * Must be a child of SessionProvider. Takes a player key and auto-joins the session,
27
+ * providing sendInput and currentPlayerId to child components.
28
+ *
29
+ * Usage:
30
+ * ```tsx
31
+ * <SessionProvider config={}>
32
+ * <ParticipantProvider playerKey={myPrivateKey}>
33
+ * <Game />
34
+ * </ParticipantProvider>
35
+ * </SessionProvider>
36
+ * ```
37
+ */
38
+ export declare function ParticipantProvider({ playerKey, joinOptions, children }: ParticipantProviderProps): import("react/jsx-runtime").JSX.Element;
39
+ /**
40
+ * Hook to access participant context
41
+ */
42
+ export declare function useParticipantContext(): ParticipantContextValue;
43
+ /**
44
+ * Hook to get the current player ID (convenience wrapper)
45
+ */
46
+ export declare function useCurrentPlayerId(): string;
47
+ /**
48
+ * Hook to get the sendInput function (convenience wrapper)
49
+ */
50
+ export declare function useSendInput(): (input: Uint8Array) => void;
51
+ //# sourceMappingURL=ParticipantProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ParticipantProvider.d.ts","sourceRoot":"","sources":["../../../../src/react/providers/ParticipantProvider.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAwB,WAAW,EAAE,MAAM,eAAe,CAAC;AAEvE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,gCAAgC;IAChC,SAAS,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IACvC,gDAAgD;IAChD,eAAe,EAAE,MAAM,CAAC;IACxB,6DAA6D;IAC7D,QAAQ,EAAE,OAAO,CAAC;CACnB;AAID;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,8CAA8C;IAC9C,SAAS,EAAE,UAAU,CAAC;IACtB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,wBAAwB,2CA0DjG;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,uBAAuB,CAM/D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAE1D"}
@@ -1 +1 @@
1
- {"version":3,"file":"SessionProvider.d.ts","sourceRoot":"","sources":["../../../../src/react/providers/SessionProvider.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EAKrB,MAAM,kBAAkB,CAAC;AAQ1B,eAAO,MAAM,cAAc,qDAAkD,CAAC;AA4D9E;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,oBAAoB,2CA8GzE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,mBAAmB,CAMvD"}
1
+ {"version":3,"file":"SessionProvider.d.ts","sourceRoot":"","sources":["../../../../src/react/providers/SessionProvider.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EAKrB,MAAM,kBAAkB,CAAC;AAQ1B,eAAO,MAAM,cAAc,qDAAkD,CAAC;AA6D9E;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,oBAAoB,2CA4GzE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,mBAAmB,CAMvD"}
@@ -1,2 +1,4 @@
1
1
  export { SessionProvider, SessionContext, useSessionContext } from './SessionProvider';
2
+ export { ParticipantProvider, useParticipantContext, useCurrentPlayerId, useSendInput } from './ParticipantProvider';
3
+ export type { ParticipantContextValue, ParticipantProviderProps } from './ParticipantProvider';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACtF,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpH,YAAY,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { SyncStatusStore } from '../types/session';
2
+ /**
3
+ * Create a Zustand store for tracking sync status
4
+ */
5
+ export declare function createSyncStatusStore(): import("zustand").StoreApi<SyncStatusStore>;
6
+ //# sourceMappingURL=syncStatusStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncStatusStore.d.ts","sourceRoot":"","sources":["../../../../src/react/stores/syncStatusStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAc,eAAe,EAAE,MAAM,kBAAkB,CAAC;AASpE;;GAEG;AACH,wBAAgB,qBAAqB,gDAQpC"}
@@ -2,7 +2,7 @@ import type { RefObject } from 'react';
2
2
  import type { RootState } from '@react-three/fiber';
3
3
  import type { StoreApi as ZustandStoreApi } from 'zustand';
4
4
  import type { SessionConfig } from '../../session-config';
5
- import type { SessionStats, SessionOptions, SessionInterface } from '../../session';
5
+ import type { SessionStats, SessionOptions, SessionInterface, InputSenderInterface, JoinOptions } from '../../session';
6
6
  import type { Participant } from '../../input-graph';
7
7
  import type { EntityRef, CompiledSchema } from '../../state';
8
8
  import type { InputCodec } from '../../input-codec';
@@ -50,8 +50,6 @@ export interface SessionContextValue {
50
50
  isReady: boolean;
51
51
  /** Error during session initialization */
52
52
  error: Error | null;
53
- /** Send input to the session */
54
- sendInput: (input: Uint8Array) => void;
55
53
  /** Compiled input bindings */
56
54
  inputBindings: InputCodec;
57
55
  /** Session has ended */
@@ -62,8 +60,8 @@ export interface SessionContextValue {
62
60
  schema: CompiledSchema;
63
61
  /** Get session stats */
64
62
  getStats: () => SessionStats;
65
- /** Get current player id */
66
- currentPlayerId: string;
63
+ /** Join the session as a participant, returns an InputSender */
64
+ join: (playerKey: Uint8Array, options?: JoinOptions) => Promise<InputSenderInterface>;
67
65
  }
68
66
  /**
69
67
  * Props for SessionProvider component
@@ -78,12 +76,11 @@ export interface SessionProviderProps {
78
76
  export interface ReactSessionInterface {
79
77
  getConfig: SessionInterface['getConfig'];
80
78
  getInputBindings: SessionInterface['getInputBindings'];
81
- sendInput: SessionInterface['sendInput'];
82
79
  getState: SessionInterface['getState'];
83
80
  getStats: SessionInterface['getStats'];
84
81
  close: SessionInterface['close'];
85
82
  getParticipants: SessionInterface['getParticipants'];
86
- getCurrentPlayerId: SessionInterface['getCurrentPlayerId'];
83
+ join: (playerKey: Uint8Array, options?: JoinOptions) => Promise<InputSenderInterface>;
87
84
  }
88
85
  /**
89
86
  * Factory function type for creating sessions (allows test mocking)
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/react/types/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../src/react/types/session.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { type CompiledSchema, type StateBuffer, type StateSchema, type StoreApi
4
4
  import type { CompiledInitDataSchema } from './schema';
5
5
  import { type Rollback as RollbackClass } from './rollback';
6
6
  import { SessionConfig } from './session-config';
7
+ import { PeerMesh } from './peer-mesh';
7
8
  import type { Participant } from './input-graph';
8
9
  export * from './input-graph';
9
10
  export declare const OPTIMISTIC_NONE: "NONE";
@@ -41,7 +42,6 @@ export interface MultitapConfig {
41
42
  };
42
43
  }
43
44
  export interface SessionOptions {
44
- playerKey: Uint8Array;
45
45
  authority?: string;
46
46
  appID: string;
47
47
  path: string[] | string;
@@ -56,6 +56,7 @@ export interface SessionOptions {
56
56
  maxTicksPerBatch?: number;
57
57
  tickLag?: number;
58
58
  connectionTimeoutMs?: number;
59
+ joinTimeoutMs?: number;
59
60
  plugins: MultitapPlugin[];
60
61
  schema: {
61
62
  state: StateSchema | CompiledSchema;
@@ -66,9 +67,27 @@ export interface SessionOptions {
66
67
  renderer: Renderer;
67
68
  logSyncTicks?: boolean;
68
69
  enableStatsCollection?: boolean;
69
- enableP2P?: boolean;
70
70
  optimisticStrategy: OptimisticStrategy;
71
71
  predictedHeadMax?: number | 'auto';
72
+ manifestURL?: string | undefined;
73
+ }
74
+ export interface InputSenderInterface {
75
+ sendInput(input: Uint8Array): void;
76
+ readonly currentPlayerId: string;
77
+ getPublicKey(): Uint8Array;
78
+ }
79
+ export interface JoinOptions {
80
+ enableP2P?: boolean;
81
+ }
82
+ export declare class InputSender implements InputSenderInterface {
83
+ private channel;
84
+ private privateKey;
85
+ private publicKey;
86
+ private peerMesh;
87
+ constructor(channel: Channel, privateKey: Uint8Array, peerMesh: PeerMesh | null);
88
+ sendInput(input: Uint8Array): void;
89
+ get currentPlayerId(): string;
90
+ getPublicKey(): Uint8Array;
72
91
  }
73
92
  declare class Session {
74
93
  private channel;
@@ -76,7 +95,6 @@ declare class Session {
76
95
  private config;
77
96
  private initializing;
78
97
  private initialized;
79
- private playerKey;
80
98
  private compiledStateSchema;
81
99
  private rollbackWorkerUrl;
82
100
  private rollbackWorker;
@@ -86,6 +104,7 @@ declare class Session {
86
104
  readonly debug: boolean | undefined;
87
105
  private autoConnect;
88
106
  private connectionTimeoutMs;
107
+ private joinTimeoutMs;
89
108
  private tickLag;
90
109
  private logSyncTicks;
91
110
  private schema;
@@ -103,20 +122,18 @@ declare class Session {
103
122
  private participantsById;
104
123
  private participantsSorted;
105
124
  private peerMesh;
106
- private enableP2P;
107
125
  private optimisticStrategy;
108
126
  private predictedHeadMax;
127
+ private manifestURL;
109
128
  constructor(options: SessionOptions);
110
129
  init(): Promise<void>;
111
- getCurrentPlayerId(): string;
112
130
  getParticipants(): readonly Participant[];
113
131
  private onParticipantJoined;
114
132
  getConfig(): SessionConfig;
115
133
  getStateBindings(): StoreApi;
116
134
  getInputBindings(): InputCodec;
117
- sendInput(input: Uint8Array): void;
135
+ join(privateKey: Uint8Array, options?: JoinOptions): Promise<InputSender>;
118
136
  getState(): StateBuffer;
119
- private onInputSendError;
120
137
  private onStateUpdate;
121
138
  getStats(): SessionStats;
122
139
  close(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@multitapio/multitap",
3
3
  "type": "module",
4
- "version": "0.0.17",
4
+ "version": "0.0.19",
5
5
  "description": "Rollback networking SDK for fast-paced multiplayer games",
6
6
  "main": "./dist/lib.js",
7
7
  "types": "./dist/lib.d.ts",