notebooklm-api 0.2.0

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 (58) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/LICENSE +21 -0
  3. package/README.md +113 -0
  4. package/dist/api/artifacts.d.ts +155 -0
  5. package/dist/api/artifacts.d.ts.map +1 -0
  6. package/dist/api/chat.d.ts +63 -0
  7. package/dist/api/chat.d.ts.map +1 -0
  8. package/dist/api/notebooks.d.ts +91 -0
  9. package/dist/api/notebooks.d.ts.map +1 -0
  10. package/dist/api/notes.d.ts +56 -0
  11. package/dist/api/notes.d.ts.map +1 -0
  12. package/dist/api/research.d.ts +63 -0
  13. package/dist/api/research.d.ts.map +1 -0
  14. package/dist/api/sources.d.ts +136 -0
  15. package/dist/api/sources.d.ts.map +1 -0
  16. package/dist/auth.d.ts +82 -0
  17. package/dist/auth.d.ts.map +1 -0
  18. package/dist/cli/commands/chat.d.ts +7 -0
  19. package/dist/cli/commands/chat.d.ts.map +1 -0
  20. package/dist/cli/commands/generate.d.ts +6 -0
  21. package/dist/cli/commands/generate.d.ts.map +1 -0
  22. package/dist/cli/commands/login.d.ts +8 -0
  23. package/dist/cli/commands/login.d.ts.map +1 -0
  24. package/dist/cli/commands/notebook.d.ts +8 -0
  25. package/dist/cli/commands/notebook.d.ts.map +1 -0
  26. package/dist/cli/commands/research.d.ts +6 -0
  27. package/dist/cli/commands/research.d.ts.map +1 -0
  28. package/dist/cli/commands/source.d.ts +6 -0
  29. package/dist/cli/commands/source.d.ts.map +1 -0
  30. package/dist/cli/helpers.d.ts +55 -0
  31. package/dist/cli/helpers.d.ts.map +1 -0
  32. package/dist/cli/index.d.ts +8 -0
  33. package/dist/cli/index.d.ts.map +1 -0
  34. package/dist/cli/index.js +18930 -0
  35. package/dist/client.d.ts +134 -0
  36. package/dist/client.d.ts.map +1 -0
  37. package/dist/core.d.ts +65 -0
  38. package/dist/core.d.ts.map +1 -0
  39. package/dist/errors.d.ts +68 -0
  40. package/dist/errors.d.ts.map +1 -0
  41. package/dist/index.d.ts +42 -0
  42. package/dist/index.d.ts.map +1 -0
  43. package/dist/index.js +15519 -0
  44. package/dist/logger.d.ts +28 -0
  45. package/dist/logger.d.ts.map +1 -0
  46. package/dist/paths.d.ts +36 -0
  47. package/dist/paths.d.ts.map +1 -0
  48. package/dist/rpc/decoder.d.ts +81 -0
  49. package/dist/rpc/decoder.d.ts.map +1 -0
  50. package/dist/rpc/encoder.d.ts +48 -0
  51. package/dist/rpc/encoder.d.ts.map +1 -0
  52. package/dist/rpc/index.d.ts +7 -0
  53. package/dist/rpc/index.d.ts.map +1 -0
  54. package/dist/rpc/types.d.ts +148 -0
  55. package/dist/rpc/types.d.ts.map +1 -0
  56. package/dist/types.d.ts +226 -0
  57. package/dist/types.d.ts.map +1 -0
  58. package/package.json +63 -0
@@ -0,0 +1,134 @@
1
+ /**
2
+ * NotebookLM Client
3
+ *
4
+ * Main entry point for interacting with Google NotebookLM.
5
+ */
6
+ import { AuthTokens } from './auth.ts';
7
+ import { NotebooksAPI } from './api/notebooks.ts';
8
+ import { SourcesAPI } from './api/sources.ts';
9
+ import { ChatAPI } from './api/chat.ts';
10
+ import { ArtifactsAPI } from './api/artifacts.ts';
11
+ import { ResearchAPI } from './api/research.ts';
12
+ import { NotesAPI } from './api/notes.ts';
13
+ /**
14
+ * Main client for NotebookLM API.
15
+ *
16
+ * Provides access to NotebookLM functionality through namespaced sub-clients:
17
+ * - `notebooks` - Notebook management
18
+ * - `sources` - Source document management
19
+ * - `chat` - Conversational AI interactions
20
+ * - `artifacts` - AI-generated content (audio, video, reports, etc.)
21
+ * - `research` - Web and Drive research
22
+ * - `notes` - User notes management
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * const client = await NotebookLMClient.fromStorage();
27
+ *
28
+ * // List notebooks
29
+ * const notebooks = await client.notebooks.list();
30
+ *
31
+ * // Create a notebook
32
+ * const nb = await client.notebooks.create("My Research");
33
+ *
34
+ * // Add a source
35
+ * const source = await client.sources.addUrl(nb.id, "https://example.com");
36
+ *
37
+ * // Ask a question
38
+ * const result = await client.chat.ask(nb.id, "Summarize this content");
39
+ * console.log(result.answer);
40
+ *
41
+ * // Generate audio overview
42
+ * const status = await client.artifacts.generateAudio(nb.id);
43
+ * await client.artifacts.waitForGeneration(nb.id, status.artifactId);
44
+ * ```
45
+ */
46
+ export declare class NotebookLMClient {
47
+ private core;
48
+ /**
49
+ * Notebook management API
50
+ */
51
+ readonly notebooks: NotebooksAPI;
52
+ /**
53
+ * Source document management API
54
+ */
55
+ readonly sources: SourcesAPI;
56
+ /**
57
+ * Conversational AI API
58
+ */
59
+ readonly chat: ChatAPI;
60
+ /**
61
+ * AI-generated content API
62
+ */
63
+ readonly artifacts: ArtifactsAPI;
64
+ /**
65
+ * Web and Drive research API
66
+ */
67
+ readonly research: ResearchAPI;
68
+ /**
69
+ * User notes management API
70
+ */
71
+ readonly notes: NotesAPI;
72
+ /**
73
+ * Creates a new NotebookLMClient instance.
74
+ *
75
+ * Prefer using `fromStorage()` for most use cases.
76
+ *
77
+ * @param auth - Authentication tokens
78
+ */
79
+ constructor(auth: AuthTokens);
80
+ /**
81
+ * Creates a NotebookLMClient from a Playwright storage state file.
82
+ *
83
+ * This is the recommended way to create a client after running
84
+ * `notebooklm login` to authenticate.
85
+ *
86
+ * @param storagePath - Path to storage state file (optional, uses default if not specified)
87
+ * @returns Promise resolving to a configured client
88
+ *
89
+ * @example
90
+ * ```typescript
91
+ * // Use default storage path (~/.notebooklm/storage-state.json)
92
+ * const client = await NotebookLMClient.fromStorage();
93
+ *
94
+ * // Use custom storage path
95
+ * const client = await NotebookLMClient.fromStorage('/path/to/storage.json');
96
+ * ```
97
+ */
98
+ static fromStorage(storagePath?: string): Promise<NotebookLMClient>;
99
+ /**
100
+ * Refreshes authentication tokens.
101
+ *
102
+ * Call this if you encounter "Session Expired" errors. The client
103
+ * will automatically attempt to refresh on auth errors, but you
104
+ * can call this proactively.
105
+ *
106
+ * @example
107
+ * ```typescript
108
+ * // Proactively refresh before a long operation
109
+ * await client.refreshAuth();
110
+ * ```
111
+ */
112
+ refreshAuth(): Promise<void>;
113
+ /**
114
+ * Gets the current authentication tokens.
115
+ *
116
+ * Useful for debugging or saving state.
117
+ */
118
+ getAuth(): AuthTokens;
119
+ /**
120
+ * Checks if the client is authenticated.
121
+ */
122
+ isAuthenticated(): boolean;
123
+ }
124
+ /**
125
+ * Creates a NotebookLMClient using the async context manager pattern.
126
+ *
127
+ * @example
128
+ * ```typescript
129
+ * await using client = await createClient();
130
+ * const notebooks = await client.notebooks.list();
131
+ * ```
132
+ */
133
+ export declare function createClient(storagePath?: string): Promise<NotebookLMClient>;
134
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,IAAI,CAAa;IAEzB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAE7B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IAEzB;;;;;;OAMG;gBACS,IAAI,EAAE,UAAU;IAc5B;;;;;;;;;;;;;;;;;OAiBG;WACU,WAAW,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAOzE;;;;;;;;;;;;OAYG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAKlC;;;;OAIG;IACH,OAAO,IAAI,UAAU;IAIrB;;OAEG;IACH,eAAe,IAAI,OAAO;CAG3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAE3B"}
package/dist/core.d.ts ADDED
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Core Client Implementation for NotebookLM API
3
+ *
4
+ * Handles HTTP communication, RPC encoding/decoding, and authentication.
5
+ */
6
+ import { AuthTokens } from './auth.ts';
7
+ import { type RPCMethod, type RPCParams } from './rpc/types.ts';
8
+ import type { ConversationTurn } from './types.ts';
9
+ /**
10
+ * Core client for NotebookLM API communication.
11
+ *
12
+ * This is an internal component used by higher-level sub-client APIs.
13
+ */
14
+ export declare class ClientCore {
15
+ private auth;
16
+ private refreshLock;
17
+ private conversationCache;
18
+ constructor(auth: AuthTokens);
19
+ /**
20
+ * Gets the current auth tokens.
21
+ */
22
+ getAuth(): AuthTokens;
23
+ /**
24
+ * Executes an RPC call to the NotebookLM API.
25
+ *
26
+ * @param method - The RPC method to call
27
+ * @param params - Parameters for the RPC call
28
+ * @param retryOnAuthError - Whether to retry on auth failure
29
+ * @returns The decoded response data
30
+ */
31
+ rpcCall(method: RPCMethod, params: RPCParams, retryOnAuthError?: boolean): Promise<unknown>;
32
+ /**
33
+ * Refreshes authentication tokens.
34
+ *
35
+ * Uses a lock to ensure only one refresh runs at a time.
36
+ */
37
+ refreshAuth(): Promise<void>;
38
+ /**
39
+ * Uploads a file to NotebookLM.
40
+ *
41
+ * Uses Google's resumable upload protocol.
42
+ */
43
+ uploadFile(notebookId: string, filename: string, content: Uint8Array, contentType: string): Promise<string>;
44
+ /**
45
+ * Downloads content from a URL with authentication.
46
+ */
47
+ download(url: string): Promise<Response>;
48
+ /**
49
+ * Gets cached conversation turns for a conversation ID.
50
+ */
51
+ getCachedTurns(conversationId: string): ConversationTurn[];
52
+ /**
53
+ * Adds a turn to the conversation cache.
54
+ */
55
+ addCachedTurn(conversationId: string, turn: ConversationTurn): void;
56
+ /**
57
+ * Clears the conversation cache.
58
+ */
59
+ clearConversationCache(conversationId?: string): void;
60
+ /**
61
+ * Extracts source IDs from a notebook response.
62
+ */
63
+ extractSourceIds(notebookData: unknown): string[];
64
+ }
65
+ //# sourceMappingURL=core.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAiB,MAAM,WAAW,CAAC;AACtD,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAC;AAexB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAOnD;;;;GAIG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,WAAW,CAA8B;IACjD,OAAO,CAAC,iBAAiB,CAA8C;gBAE3D,IAAI,EAAE,UAAU;IAI5B;;OAEG;IACH,OAAO,IAAI,UAAU;IAIrB;;;;;;;OAOG;IACG,OAAO,CACX,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,SAAS,EACjB,gBAAgB,UAAO,GACtB,OAAO,CAAC,OAAO,CAAC;IA6CnB;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IAsBlC;;;;OAIG;IACG,UAAU,CACd,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,UAAU,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC;IAsDlB;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAa9C;;OAEG;IACH,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,gBAAgB,EAAE;IAI1D;;OAEG;IACH,aAAa,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,GAAG,IAAI;IAkBnE;;OAEG;IACH,sBAAsB,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;IAYrD;;OAEG;IACH,gBAAgB,CAAC,YAAY,EAAE,OAAO,GAAG,MAAM,EAAE;CAiBlD"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Error Classes for NotebookLM Client
3
+ */
4
+ export { RPCError, AuthError } from './rpc/decoder.ts';
5
+ /**
6
+ * Base error class for source-related errors
7
+ */
8
+ export declare class SourceError extends Error {
9
+ readonly sourceId?: string | undefined;
10
+ readonly notebookId?: string | undefined;
11
+ constructor(message: string, sourceId?: string | undefined, notebookId?: string | undefined);
12
+ }
13
+ /**
14
+ * Error thrown when source processing fails
15
+ */
16
+ export declare class SourceProcessingError extends SourceError {
17
+ readonly errorCode?: number | undefined;
18
+ constructor(message: string, sourceId?: string, notebookId?: string, errorCode?: number | undefined);
19
+ }
20
+ /**
21
+ * Error thrown when waiting for source processing times out
22
+ */
23
+ export declare class SourceTimeoutError extends SourceError {
24
+ readonly elapsedMs?: number | undefined;
25
+ constructor(message: string, sourceId?: string, notebookId?: string, elapsedMs?: number | undefined);
26
+ }
27
+ /**
28
+ * Error thrown when a source is not found
29
+ */
30
+ export declare class SourceNotFoundError extends SourceError {
31
+ constructor(sourceId: string, notebookId?: string);
32
+ }
33
+ /**
34
+ * Error thrown when a notebook is not found
35
+ */
36
+ export declare class NotebookNotFoundError extends Error {
37
+ readonly notebookId: string;
38
+ constructor(notebookId: string);
39
+ }
40
+ /**
41
+ * Error thrown when artifact generation fails
42
+ */
43
+ export declare class GenerationError extends Error {
44
+ readonly artifactId?: string | undefined;
45
+ readonly contentType?: string | undefined;
46
+ constructor(message: string, artifactId?: string | undefined, contentType?: string | undefined);
47
+ }
48
+ /**
49
+ * Error thrown when artifact generation times out
50
+ */
51
+ export declare class GenerationTimeoutError extends GenerationError {
52
+ readonly elapsedMs?: number | undefined;
53
+ constructor(message: string, artifactId?: string, contentType?: string, elapsedMs?: number | undefined);
54
+ }
55
+ /**
56
+ * Error thrown when research operations fail
57
+ */
58
+ export declare class ResearchError extends Error {
59
+ readonly taskId?: string | undefined;
60
+ constructor(message: string, taskId?: string | undefined);
61
+ }
62
+ /**
63
+ * Error thrown for invalid configuration
64
+ */
65
+ export declare class ConfigurationError extends Error {
66
+ constructor(message: string);
67
+ }
68
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEvD;;GAEG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAGlB,QAAQ,CAAC,EAAE,MAAM;aACjB,UAAU,CAAC,EAAE,MAAM;gBAFnC,OAAO,EAAE,MAAM,EACC,QAAQ,CAAC,EAAE,MAAM,YAAA,EACjB,UAAU,CAAC,EAAE,MAAM,YAAA;CAKtC;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,WAAW;aAKlC,SAAS,CAAC,EAAE,MAAM;gBAHlC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACH,SAAS,CAAC,EAAE,MAAM,YAAA;CAKrC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,WAAW;aAK/B,SAAS,CAAC,EAAE,MAAM;gBAHlC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACH,SAAS,CAAC,EAAE,MAAM,YAAA;CAKrC;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,WAAW;gBACtC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAIlD;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;aAClB,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM;CAI/C;AAED;;GAEG;AACH,qBAAa,eAAgB,SAAQ,KAAK;aAGtB,UAAU,CAAC,EAAE,MAAM;aACnB,WAAW,CAAC,EAAE,MAAM;gBAFpC,OAAO,EAAE,MAAM,EACC,UAAU,CAAC,EAAE,MAAM,YAAA,EACnB,WAAW,CAAC,EAAE,MAAM,YAAA;CAKvC;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,eAAe;aAKvC,SAAS,CAAC,EAAE,MAAM;gBAHlC,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,MAAM,EACJ,SAAS,CAAC,EAAE,MAAM,YAAA;CAKrC;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK;aAGpB,MAAM,CAAC,EAAE,MAAM;gBAD/B,OAAO,EAAE,MAAM,EACC,MAAM,CAAC,EAAE,MAAM,YAAA;CAKlC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * NotebookLM TypeScript Client
3
+ *
4
+ * An unofficial TypeScript client for Google NotebookLM.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * import { NotebookLMClient } from 'notebooklm';
9
+ *
10
+ * const client = await NotebookLMClient.fromStorage();
11
+ *
12
+ * // List notebooks
13
+ * const notebooks = await client.notebooks.list();
14
+ *
15
+ * // Create a notebook and add sources
16
+ * const nb = await client.notebooks.create("My Research");
17
+ * await client.sources.addUrl(nb.id, "https://example.com");
18
+ *
19
+ * // Ask questions
20
+ * const result = await client.chat.ask(nb.id, "Summarize this");
21
+ * console.log(result.answer);
22
+ *
23
+ * // Generate audio overview
24
+ * const status = await client.artifacts.generateAudio(nb.id);
25
+ * await client.artifacts.waitForGeneration(nb.id, status.artifactId);
26
+ * ```
27
+ *
28
+ * @remarks
29
+ * This library uses undocumented Google APIs that can change without notice.
30
+ * It is best suited for prototyping, research, and personal projects.
31
+ *
32
+ * @packageDocumentation
33
+ */
34
+ export { NotebookLMClient, createClient } from './client.ts';
35
+ export { AuthTokens } from './auth.ts';
36
+ export { DEFAULT_STORAGE_PATH, DEFAULT_DATA_DIR } from './paths.ts';
37
+ export type { Notebook, NotebookDescription, SuggestedTopic, Source, SourceType, SourceFulltext, SourceSection, SourceGuide, AskResult, ChatReference, ConversationTurn, ChatConfig, Artifact, GenerationStatus, AudioOptions, VideoOptions, ReportOptions, QuizOptions, FlashcardOptions, MindMapOptions, InfographicOptions, SlideOptions, DataTableOptions, ResearchTask, ResearchResult, ResearchSource, Note, Cookie, } from './types.ts';
38
+ export { StudioContentType, AudioFormat, AudioLength, VideoFormat, VideoStyle, QuizDifficulty, ReportFormat, InfographicOrientation, ChatMode, ResponseLength, ResearchSourceType, ResearchMode, SourceStatus, GenerationStatusCode, DriveDocType, ExportDestination, } from './types.ts';
39
+ export { RPCError, AuthError, SourceError, SourceProcessingError, SourceTimeoutError, SourceNotFoundError, NotebookNotFoundError, GenerationError, GenerationTimeoutError, ResearchError, ConfigurationError, } from './errors.ts';
40
+ export { setLogLevel, getLogLevel, createLogger } from './logger.ts';
41
+ export declare const VERSION = "0.1.0";
42
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAGH,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG7D,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGpE,YAAY,EAEV,QAAQ,EACR,mBAAmB,EACnB,cAAc,EAGd,MAAM,EACN,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EAGX,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,UAAU,EAGV,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAGhB,YAAY,EACZ,cAAc,EACd,cAAc,EAGd,IAAI,EAGJ,MAAM,GACP,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,WAAW,EACX,UAAU,EACV,cAAc,EACd,YAAY,EACZ,sBAAsB,EACtB,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,GAClB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,QAAQ,EACR,SAAS,EACT,WAAW,EACX,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGrE,eAAO,MAAM,OAAO,UAAU,CAAC"}