infinium-o2 0.1.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 (53) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +550 -0
  3. package/dist/cjs/asyncClient.d.ts +119 -0
  4. package/dist/cjs/asyncClient.d.ts.map +1 -0
  5. package/dist/cjs/asyncClient.js +464 -0
  6. package/dist/cjs/asyncClient.js.map +1 -0
  7. package/dist/cjs/client.d.ts +92 -0
  8. package/dist/cjs/client.d.ts.map +1 -0
  9. package/dist/cjs/client.js +354 -0
  10. package/dist/cjs/client.js.map +1 -0
  11. package/dist/cjs/errors.d.ts +102 -0
  12. package/dist/cjs/errors.d.ts.map +1 -0
  13. package/dist/cjs/errors.js +218 -0
  14. package/dist/cjs/errors.js.map +1 -0
  15. package/dist/cjs/index.d.ts +12 -0
  16. package/dist/cjs/index.d.ts.map +1 -0
  17. package/dist/cjs/index.js +61 -0
  18. package/dist/cjs/index.js.map +1 -0
  19. package/dist/cjs/package.json +1 -0
  20. package/dist/cjs/types.d.ts +231 -0
  21. package/dist/cjs/types.d.ts.map +1 -0
  22. package/dist/cjs/types.js +23 -0
  23. package/dist/cjs/types.js.map +1 -0
  24. package/dist/cjs/utils.d.ts +130 -0
  25. package/dist/cjs/utils.d.ts.map +1 -0
  26. package/dist/cjs/utils.js +381 -0
  27. package/dist/cjs/utils.js.map +1 -0
  28. package/dist/esm/asyncClient.d.ts +119 -0
  29. package/dist/esm/asyncClient.d.ts.map +1 -0
  30. package/dist/esm/asyncClient.js +457 -0
  31. package/dist/esm/asyncClient.js.map +1 -0
  32. package/dist/esm/client.d.ts +92 -0
  33. package/dist/esm/client.d.ts.map +1 -0
  34. package/dist/esm/client.js +347 -0
  35. package/dist/esm/client.js.map +1 -0
  36. package/dist/esm/errors.d.ts +102 -0
  37. package/dist/esm/errors.d.ts.map +1 -0
  38. package/dist/esm/errors.js +200 -0
  39. package/dist/esm/errors.js.map +1 -0
  40. package/dist/esm/index.d.ts +12 -0
  41. package/dist/esm/index.d.ts.map +1 -0
  42. package/dist/esm/index.js +17 -0
  43. package/dist/esm/index.js.map +1 -0
  44. package/dist/esm/package.json +1 -0
  45. package/dist/esm/types.d.ts +231 -0
  46. package/dist/esm/types.d.ts.map +1 -0
  47. package/dist/esm/types.js +20 -0
  48. package/dist/esm/types.js.map +1 -0
  49. package/dist/esm/utils.d.ts +130 -0
  50. package/dist/esm/utils.d.ts.map +1 -0
  51. package/dist/esm/utils.js +355 -0
  52. package/dist/esm/utils.js.map +1 -0
  53. package/package.json +94 -0
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Infinium SDK for Node.js
3
+ *
4
+ * A production-ready SDK for interacting with the Infinium Hosted MCP Bridge API.
5
+ */
6
+ export { InfiniumClient } from './client';
7
+ export { AsyncInfiniumClient } from './asyncClient';
8
+ export { AgentType, TaskData, ApiResponse, HealthCheck, BatchResult, ClientConfig, RequestOptions, RetryConfig, RateLimiterConfig, LogEntry, TimeTracking, Customer, Support, Sales, Marketing, Content, Research, Project, Development, Executive, General, } from './types';
9
+ export { InfiniumError, AuthenticationError, ValidationError, RateLimitError, NetworkError, TimeoutError, ServerError, NotFoundError, BatchError, ConfigurationError, PayloadTooLargeError, isInfiniumError, isErrorType, toInfiniumError, handleAxiosError, } from './errors';
10
+ export { Logger, ConsoleLogger, RateLimiter, validateAgentCredentials, validateIsoDatetime, validateAgentType, validateDuration, validateRequiredField, getCurrentIsoDatetime, safeJsonStringify, safeJsonParse, mergeObjects, sleep, calculateBackoff, retryWithBackoff, shouldRetryError, generateUserAgent, validateUrl, normalizeUrl, camelToSnakeCase, snakeToCamelCase, objectToSnakeCase, objectToCamelCase, setupLogging, } from './utils';
11
+ export declare const VERSION = "0.1.0";
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAGpD,OAAO,EACL,SAAS,EACT,QAAQ,EACR,WAAW,EACX,WAAW,EACX,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,iBAAiB,EACjB,QAAQ,EACR,YAAY,EACZ,QAAQ,EACR,OAAO,EACP,KAAK,EACL,SAAS,EACT,OAAO,EACP,QAAQ,EACR,OAAO,EACP,WAAW,EACX,SAAS,EACT,OAAO,GACR,MAAM,SAAS,CAAC;AAGjB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,eAAe,EACf,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAGlB,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,KAAK,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC;AAGjB,eAAO,MAAM,OAAO,UAAU,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Infinium SDK for Node.js
3
+ *
4
+ * A production-ready SDK for interacting with the Infinium Hosted MCP Bridge API.
5
+ */
6
+ // Main clients
7
+ export { InfiniumClient } from './client';
8
+ export { AsyncInfiniumClient } from './asyncClient';
9
+ // Types
10
+ export { AgentType, } from './types';
11
+ // Errors
12
+ export { InfiniumError, AuthenticationError, ValidationError, RateLimitError, NetworkError, TimeoutError, ServerError, NotFoundError, BatchError, ConfigurationError, PayloadTooLargeError, isInfiniumError, isErrorType, toInfiniumError, handleAxiosError, } from './errors';
13
+ // Utilities
14
+ export { ConsoleLogger, RateLimiter, validateAgentCredentials, validateIsoDatetime, validateAgentType, validateDuration, validateRequiredField, getCurrentIsoDatetime, safeJsonStringify, safeJsonParse, mergeObjects, sleep, calculateBackoff, retryWithBackoff, shouldRetryError, generateUserAgent, validateUrl, normalizeUrl, camelToSnakeCase, snakeToCamelCase, objectToSnakeCase, objectToCamelCase, setupLogging, } from './utils';
15
+ // Version (automatically updated from package.json during build)
16
+ export const VERSION = '0.1.0';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAe;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,QAAQ;AACR,OAAO,EACL,SAAS,GAqBV,MAAM,SAAS,CAAC;AAEjB,SAAS;AACT,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,EACf,WAAW,EACX,eAAe,EACf,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAElB,YAAY;AACZ,OAAO,EAEL,aAAa,EACb,WAAW,EACX,wBAAwB,EACxB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,KAAK,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACb,MAAM,SAAS,CAAC;AAEjB,iEAAiE;AACjE,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC"}
@@ -0,0 +1 @@
1
+ {"type":"module"}
@@ -0,0 +1,231 @@
1
+ /**
2
+ * Type definitions for the Infinium SDK.
3
+ */
4
+ /**
5
+ * Available agent types for Infinium.
6
+ */
7
+ export declare enum AgentType {
8
+ OTHER = "OTHER",
9
+ EXECUTIVE_ASSISTANT = "EXECUTIVE_ASSISTANT",
10
+ MARKETING_ASSISTANT = "MARKETING_ASSISTANT",
11
+ DATA_ANALYST = "DATA_ANALYST",
12
+ RESEARCH_ASSISTANT = "RESEARCH_ASSISTANT",
13
+ CUSTOMER_SUPPORT_ASSISTANT = "CUSTOMER_SUPPORT_ASSISTANT",
14
+ CONTENT_CREATOR = "CONTENT_CREATOR",
15
+ SALES_ASSISTANT = "SALES_ASSISTANT",
16
+ PROJECT_MANAGER = "PROJECT_MANAGER",
17
+ DEVELOPMENT_ASSISTANT = "DEVELOPMENT_ASSISTANT"
18
+ }
19
+ /**
20
+ * Time tracking information for a task.
21
+ */
22
+ export interface TimeTracking {
23
+ startTime?: string;
24
+ endTime?: string;
25
+ }
26
+ /**
27
+ * Customer information for a task.
28
+ */
29
+ export interface Customer {
30
+ customerName?: string;
31
+ customerEmail?: string;
32
+ customerPhone?: string;
33
+ customerAddress?: string;
34
+ clientCompany?: string;
35
+ clientIndustry?: string;
36
+ }
37
+ /**
38
+ * Support-specific information for a task.
39
+ */
40
+ export interface Support {
41
+ callId?: string;
42
+ issueDescription?: string;
43
+ issueType?: string;
44
+ resolution?: string;
45
+ status?: string;
46
+ priority?: string;
47
+ followUpRequired?: boolean;
48
+ agentNotes?: string;
49
+ }
50
+ /**
51
+ * Sales-specific information for a task.
52
+ */
53
+ export interface Sales {
54
+ leadSource?: string;
55
+ salesStage?: string;
56
+ dealValue?: number;
57
+ conversionRate?: number;
58
+ salesNotes?: string;
59
+ }
60
+ /**
61
+ * Marketing-specific information for a task.
62
+ */
63
+ export interface Marketing {
64
+ campaignName?: string;
65
+ campaignType?: string;
66
+ targetAudience?: string;
67
+ marketingChannel?: string;
68
+ engagementMetrics?: string;
69
+ conversionMetrics?: string;
70
+ }
71
+ /**
72
+ * Content creation information for a task.
73
+ */
74
+ export interface Content {
75
+ contentType?: string;
76
+ contentFormat?: string;
77
+ contentLength?: number;
78
+ contentTopic?: string;
79
+ targetPlatform?: string;
80
+ }
81
+ /**
82
+ * Research-specific information for a task.
83
+ */
84
+ export interface Research {
85
+ researchTopic?: string;
86
+ researchMethod?: string;
87
+ dataSources?: string;
88
+ researchFindings?: string;
89
+ analysisType?: string;
90
+ }
91
+ /**
92
+ * Project management information for a task.
93
+ */
94
+ export interface Project {
95
+ projectName?: string;
96
+ projectPhase?: string;
97
+ taskPriority?: string;
98
+ milestoneProgress?: number;
99
+ resourceUtilization?: number;
100
+ riskAssessment?: string;
101
+ }
102
+ /**
103
+ * Development-specific information for a task.
104
+ */
105
+ export interface Development {
106
+ testCoverage?: number;
107
+ bugCount?: number;
108
+ performanceMetrics?: string;
109
+ deploymentStatus?: string;
110
+ technicalDebt?: string;
111
+ }
112
+ /**
113
+ * Executive-specific information for a task.
114
+ */
115
+ export interface Executive {
116
+ meetingType?: string;
117
+ attendeesCount?: number;
118
+ agendaItems?: string;
119
+ actionItems?: string;
120
+ calendarConflicts?: number;
121
+ }
122
+ /**
123
+ * General task information.
124
+ */
125
+ export interface General {
126
+ toolsUsed?: string;
127
+ agentNotes?: string;
128
+ }
129
+ /**
130
+ * Complete task data structure.
131
+ */
132
+ export interface TaskData {
133
+ name: string;
134
+ description: string;
135
+ currentDatetime: string;
136
+ duration: number;
137
+ agentType?: AgentType;
138
+ timeTracking?: TimeTracking;
139
+ customer?: Customer;
140
+ support?: Support;
141
+ sales?: Sales;
142
+ marketing?: Marketing;
143
+ content?: Content;
144
+ research?: Research;
145
+ project?: Project;
146
+ development?: Development;
147
+ executive?: Executive;
148
+ general?: General;
149
+ }
150
+ /**
151
+ * API response structure.
152
+ */
153
+ export interface ApiResponse<T = unknown> {
154
+ success: boolean;
155
+ statusCode?: number;
156
+ message: string;
157
+ data?: T;
158
+ }
159
+ /**
160
+ * Health check response data.
161
+ */
162
+ export interface HealthCheck {
163
+ status: string;
164
+ agentName: string;
165
+ timestamp: string;
166
+ }
167
+ /**
168
+ * Batch operation result.
169
+ */
170
+ export interface BatchResult {
171
+ totalTasks: number;
172
+ successfulTasks: number;
173
+ failedTasks: number;
174
+ results: ApiResponse[];
175
+ errors: string[];
176
+ }
177
+ /**
178
+ * Client configuration options.
179
+ */
180
+ export interface ClientConfig {
181
+ agentId: string;
182
+ agentSecret: string;
183
+ baseUrl?: string;
184
+ timeout?: number;
185
+ maxRetries?: number;
186
+ enableRateLimiting?: boolean;
187
+ requestsPerSecond?: number;
188
+ userAgent?: string;
189
+ enableLogging?: boolean;
190
+ logLevel?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR';
191
+ }
192
+ /**
193
+ * Rate limiter configuration.
194
+ */
195
+ export interface RateLimiterConfig {
196
+ requestsPerSecond: number;
197
+ burstSize?: number;
198
+ }
199
+ /**
200
+ * Request options for API calls.
201
+ */
202
+ export interface RequestOptions {
203
+ timeout?: number;
204
+ retries?: number;
205
+ retryDelay?: number;
206
+ headers?: Record<string, string>;
207
+ }
208
+ /**
209
+ * Retry configuration.
210
+ */
211
+ export interface RetryConfig {
212
+ attempts: number;
213
+ delay: number;
214
+ factor: number;
215
+ maxDelay: number;
216
+ retryCondition?: (error: unknown) => boolean;
217
+ }
218
+ /**
219
+ * Log entry structure.
220
+ */
221
+ export interface LogEntry {
222
+ timestamp: string;
223
+ level: string;
224
+ message: string;
225
+ agentId?: string;
226
+ duration?: number;
227
+ statusCode?: number;
228
+ error?: string;
229
+ [key: string]: unknown;
230
+ }
231
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Type definitions for the Infinium SDK.
3
+ */
4
+ /**
5
+ * Available agent types for Infinium.
6
+ */
7
+ export var AgentType;
8
+ (function (AgentType) {
9
+ AgentType["OTHER"] = "OTHER";
10
+ AgentType["EXECUTIVE_ASSISTANT"] = "EXECUTIVE_ASSISTANT";
11
+ AgentType["MARKETING_ASSISTANT"] = "MARKETING_ASSISTANT";
12
+ AgentType["DATA_ANALYST"] = "DATA_ANALYST";
13
+ AgentType["RESEARCH_ASSISTANT"] = "RESEARCH_ASSISTANT";
14
+ AgentType["CUSTOMER_SUPPORT_ASSISTANT"] = "CUSTOMER_SUPPORT_ASSISTANT";
15
+ AgentType["CONTENT_CREATOR"] = "CONTENT_CREATOR";
16
+ AgentType["SALES_ASSISTANT"] = "SALES_ASSISTANT";
17
+ AgentType["PROJECT_MANAGER"] = "PROJECT_MANAGER";
18
+ AgentType["DEVELOPMENT_ASSISTANT"] = "DEVELOPMENT_ASSISTANT";
19
+ })(AgentType || (AgentType = {}));
20
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAN,IAAY,SAWX;AAXD,WAAY,SAAS;IACnB,4BAAe,CAAA;IACf,wDAA2C,CAAA;IAC3C,wDAA2C,CAAA;IAC3C,0CAA6B,CAAA;IAC7B,sDAAyC,CAAA;IACzC,sEAAyD,CAAA;IACzD,gDAAmC,CAAA;IACnC,gDAAmC,CAAA;IACnC,gDAAmC,CAAA;IACnC,4DAA+C,CAAA;AACjD,CAAC,EAXW,SAAS,KAAT,SAAS,QAWpB"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Utility functions for the Infinium SDK.
3
+ */
4
+ import { AgentType, RetryConfig, RateLimiterConfig } from './types';
5
+ /**
6
+ * Logger interface for SDK logging.
7
+ */
8
+ export interface Logger {
9
+ debug(message: string, meta?: Record<string, unknown>): void;
10
+ info(message: string, meta?: Record<string, unknown>): void;
11
+ warn(message: string, meta?: Record<string, unknown>): void;
12
+ error(message: string, meta?: Record<string, unknown>): void;
13
+ }
14
+ /**
15
+ * Default console logger implementation.
16
+ */
17
+ export declare class ConsoleLogger implements Logger {
18
+ private readonly level;
19
+ constructor(level?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR');
20
+ private shouldLog;
21
+ private formatMessage;
22
+ debug(message: string, meta?: Record<string, unknown>): void;
23
+ info(message: string, meta?: Record<string, unknown>): void;
24
+ warn(message: string, meta?: Record<string, unknown>): void;
25
+ error(message: string, meta?: Record<string, unknown>): void;
26
+ }
27
+ /**
28
+ * Rate limiter implementation using token bucket algorithm.
29
+ */
30
+ export declare class RateLimiter {
31
+ private tokens;
32
+ private lastRefillTime;
33
+ private readonly maxTokens;
34
+ private readonly tokensPerSecond;
35
+ constructor(config: RateLimiterConfig);
36
+ /**
37
+ * Check if a request can be made.
38
+ */
39
+ canMakeRequest(): boolean;
40
+ /**
41
+ * Get time to wait before next request can be made.
42
+ */
43
+ getWaitTime(): number;
44
+ private refillTokens;
45
+ }
46
+ /**
47
+ * Validate agent credentials.
48
+ */
49
+ export declare function validateAgentCredentials(agentId?: string, agentSecret?: string): void;
50
+ /**
51
+ * Validate ISO 8601 datetime string.
52
+ */
53
+ export declare function validateIsoDatetime(datetimeStr: string): boolean;
54
+ /**
55
+ * Validate agent type.
56
+ */
57
+ export declare function validateAgentType(agentType: string): AgentType;
58
+ /**
59
+ * Validate duration value.
60
+ */
61
+ export declare function validateDuration(duration: number): void;
62
+ /**
63
+ * Validate required field.
64
+ */
65
+ export declare function validateRequiredField(value: unknown, fieldName: string, expectedType?: 'string' | 'number' | 'boolean'): void;
66
+ /**
67
+ * Get current ISO datetime string.
68
+ */
69
+ export declare function getCurrentIsoDatetime(): string;
70
+ /**
71
+ * Convert object to JSON safely.
72
+ */
73
+ export declare function safeJsonStringify(obj: unknown): string;
74
+ /**
75
+ * Parse JSON safely.
76
+ */
77
+ export declare function safeJsonParse<T = unknown>(str: string): T | null;
78
+ /**
79
+ * Deep merge two objects.
80
+ */
81
+ export declare function mergeObjects<T extends Record<string, unknown>>(target: T, source: Partial<T>): T;
82
+ /**
83
+ * Sleep for specified milliseconds.
84
+ */
85
+ export declare function sleep(ms: number): Promise<void>;
86
+ /**
87
+ * Exponential backoff calculation.
88
+ */
89
+ export declare function calculateBackoff(attempt: number, baseDelay: number, factor?: number, maxDelay?: number): number;
90
+ /**
91
+ * Retry function with exponential backoff.
92
+ */
93
+ export declare function retryWithBackoff<T>(fn: () => Promise<T>, config: RetryConfig): Promise<T>;
94
+ /**
95
+ * Check if error should be retried.
96
+ */
97
+ export declare function shouldRetryError(error: unknown): boolean;
98
+ /**
99
+ * Generate user agent string.
100
+ */
101
+ export declare function generateUserAgent(sdkVersion: string): string;
102
+ /**
103
+ * Validate URL format.
104
+ */
105
+ export declare function validateUrl(url: string): boolean;
106
+ /**
107
+ * Clean and normalize URL.
108
+ */
109
+ export declare function normalizeUrl(url: string): string;
110
+ /**
111
+ * Convert camelCase to snake_case.
112
+ */
113
+ export declare function camelToSnakeCase(str: string): string;
114
+ /**
115
+ * Convert snake_case to camelCase.
116
+ */
117
+ export declare function snakeToCamelCase(str: string): string;
118
+ /**
119
+ * Convert object keys from camelCase to snake_case.
120
+ */
121
+ export declare function objectToSnakeCase(obj: Record<string, unknown>): Record<string, unknown>;
122
+ /**
123
+ * Convert object keys from snake_case to camelCase.
124
+ */
125
+ export declare function objectToCamelCase(obj: Record<string, unknown>): Record<string, unknown>;
126
+ /**
127
+ * Setup logging for the SDK.
128
+ */
129
+ export declare function setupLogging(enabled?: boolean, level?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR'): Logger;
130
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGpE;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC7D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC9D;AAED;;GAEG;AACH,qBAAa,aAAc,YAAW,MAAM;IAC9B,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAL,KAAK,GAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAgB;IAEhF,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,aAAa;IAMrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAM5D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAM3D,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAM3D,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;CAK7D;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IAEnC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,MAAM,EAAE,iBAAiB;IAOrC;;OAEG;IACH,cAAc,IAAI,OAAO;IASzB;;OAEG;IACH,WAAW,IAAI,MAAM;IAQrB,OAAO,CAAC,YAAY;CAOrB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBrF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAOhE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAS9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CASvD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,MAAM,EACjB,YAAY,GAAE,QAAQ,GAAG,QAAQ,GAAG,SAAoB,GACvD,IAAI,CAYN;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAMtD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAMhE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CA2BhG;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI/C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,SAAI,EACV,QAAQ,SAAQ,GACf,MAAM,CAGR;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CA0B/F;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAiBxD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAOhD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAOhD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAavF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAavF;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,OAAO,UAAQ,EACf,KAAK,GAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAgB,GAClD,MAAM,CAWR"}