telepact 1.0.0-alpha.326 → 1.0.0-alpha.334

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.
package/dist/index.cjs.js CHANGED
@@ -1853,6 +1853,7 @@ function buildUnknownErrorMessage(error, headers = {}) {
1853
1853
  return new Message(headers, { ErrorUnknown_: { caseId: error.caseId } });
1854
1854
  }
1855
1855
 
1856
+ const INTERNAL_FUNCTIONS_BYPASSING_AUTH = new Set(['fn.ping_', 'fn.api_']);
1856
1857
  async function handleMessage(requestMessage, updateHeaders, telepactSchema, middleware, functionRouter, onError, onAuth) {
1857
1858
  const responseHeaders = {};
1858
1859
  const requestHeaders = requestMessage.headers;
@@ -1862,6 +1863,7 @@ async function handleMessage(requestMessage, updateHeaders, telepactSchema, midd
1862
1863
  updateHeaders?.(requestHeaders);
1863
1864
  const requestTargetInit = requestEntry[0];
1864
1865
  const requestPayload = requestEntry[1];
1866
+ const bypassAuthForFunction = INTERNAL_FUNCTIONS_BYPASSING_AUTH.has(requestTargetInit);
1865
1867
  let unknownTarget;
1866
1868
  let requestTarget;
1867
1869
  if (!(requestTargetInit in parsedTelepactSchema)) {
@@ -1891,9 +1893,9 @@ async function handleMessage(requestMessage, updateHeaders, telepactSchema, midd
1891
1893
  if (requestHeaderValidationFailures.length > 0) {
1892
1894
  return getInvalidErrorMessage('ErrorInvalidRequestHeaders_', requestHeaderValidationFailures, resultUnionType, responseHeaders);
1893
1895
  }
1894
- if ('@auth_' in requestHeaders) {
1896
+ if ('@auth_' in requestHeaders && !bypassAuthForFunction) {
1895
1897
  try {
1896
- const authHeaders = onAuth(requestHeaders) ?? {};
1898
+ const authHeaders = (await onAuth(requestHeaders)) ?? {};
1897
1899
  Object.assign(requestHeaders, authHeaders);
1898
1900
  }
1899
1901
  catch (error) {
@@ -3364,6 +3366,8 @@ class Alias extends NodeBase {
3364
3366
  * instance of the `source` anchor before this node.
3365
3367
  */
3366
3368
  resolve(doc, ctx) {
3369
+ if (ctx?.maxAliasCount === 0)
3370
+ throw new ReferenceError('Alias resolution is disabled');
3367
3371
  let nodes;
3368
3372
  if (ctx?.aliasResolveCache) {
3369
3373
  nodes = ctx.aliasResolveCache;
@@ -4494,18 +4498,18 @@ const isMergeKey = (ctx, key) => (merge.identify(key) ||
4494
4498
  merge.identify(key.value))) &&
4495
4499
  ctx?.doc.schema.tags.some(tag => tag.tag === merge.tag && tag.default);
4496
4500
  function addMergeToJSMap(ctx, map, value) {
4497
- value = ctx && isAlias(value) ? value.resolve(ctx.doc) : value;
4498
- if (isSeq(value))
4499
- for (const it of value.items)
4501
+ const source = resolveAliasValue(ctx, value);
4502
+ if (isSeq(source))
4503
+ for (const it of source.items)
4500
4504
  mergeValue(ctx, map, it);
4501
- else if (Array.isArray(value))
4502
- for (const it of value)
4505
+ else if (Array.isArray(source))
4506
+ for (const it of source)
4503
4507
  mergeValue(ctx, map, it);
4504
4508
  else
4505
- mergeValue(ctx, map, value);
4509
+ mergeValue(ctx, map, source);
4506
4510
  }
4507
4511
  function mergeValue(ctx, map, value) {
4508
- const source = ctx && isAlias(value) ? value.resolve(ctx.doc) : value;
4512
+ const source = resolveAliasValue(ctx, value);
4509
4513
  if (!isMap(source))
4510
4514
  throw new Error('Merge sources must be maps or map aliases');
4511
4515
  const srcMap = source.toJSON(null, ctx, Map);
@@ -4528,6 +4532,9 @@ function mergeValue(ctx, map, value) {
4528
4532
  }
4529
4533
  return map;
4530
4534
  }
4535
+ function resolveAliasValue(ctx, value) {
4536
+ return ctx && isAlias(value) ? value.resolve(ctx.doc, ctx) : value;
4537
+ }
4531
4538
 
4532
4539
  function addPairToJSMap(ctx, map, { key, value }) {
4533
4540
  if (isNode(key) && key.addToJSMap)
@@ -5079,7 +5086,8 @@ function stringifyNumber({ format, minFractionDigits, tag, value }) {
5079
5086
  if (!format &&
5080
5087
  minFractionDigits &&
5081
5088
  (!tag || tag === 'tag:yaml.org,2002:float') &&
5082
- /^\d/.test(n)) {
5089
+ /^-?\d/.test(n) &&
5090
+ !n.includes('e')) {
5083
5091
  let i = n.indexOf('.');
5084
5092
  if (i < 0) {
5085
5093
  i = n.length;
@@ -7338,7 +7346,7 @@ function doubleQuotedValue(source, onError) {
7338
7346
  next = source[++i + 1];
7339
7347
  }
7340
7348
  else if (next === 'x' || next === 'u' || next === 'U') {
7341
- const length = { x: 2, u: 4, U: 8 }[next];
7349
+ const length = next === 'x' ? 2 : next === 'u' ? 4 : 8;
7342
7350
  res += parseCharCode(source, i + 1, length, onError);
7343
7351
  i += length;
7344
7352
  }
@@ -7408,12 +7416,14 @@ function parseCharCode(source, offset, length, onError) {
7408
7416
  const cc = source.substr(offset, length);
7409
7417
  const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
7410
7418
  const code = ok ? parseInt(cc, 16) : NaN;
7411
- if (isNaN(code)) {
7419
+ try {
7420
+ return String.fromCodePoint(code);
7421
+ }
7422
+ catch {
7412
7423
  const raw = source.substr(offset - 2, length + 2);
7413
7424
  onError(offset - 2, 'BAD_DQ_ESCAPE', `Invalid escape sequence ${raw}`);
7414
7425
  return raw;
7415
7426
  }
7416
- return String.fromCodePoint(code);
7417
7427
  }
7418
7428
 
7419
7429
  function composeScalar(ctx, token, tagToken, onError) {
package/dist/index.esm.js CHANGED
@@ -1851,6 +1851,7 @@ function buildUnknownErrorMessage(error, headers = {}) {
1851
1851
  return new Message(headers, { ErrorUnknown_: { caseId: error.caseId } });
1852
1852
  }
1853
1853
 
1854
+ const INTERNAL_FUNCTIONS_BYPASSING_AUTH = new Set(['fn.ping_', 'fn.api_']);
1854
1855
  async function handleMessage(requestMessage, updateHeaders, telepactSchema, middleware, functionRouter, onError, onAuth) {
1855
1856
  const responseHeaders = {};
1856
1857
  const requestHeaders = requestMessage.headers;
@@ -1860,6 +1861,7 @@ async function handleMessage(requestMessage, updateHeaders, telepactSchema, midd
1860
1861
  updateHeaders?.(requestHeaders);
1861
1862
  const requestTargetInit = requestEntry[0];
1862
1863
  const requestPayload = requestEntry[1];
1864
+ const bypassAuthForFunction = INTERNAL_FUNCTIONS_BYPASSING_AUTH.has(requestTargetInit);
1863
1865
  let unknownTarget;
1864
1866
  let requestTarget;
1865
1867
  if (!(requestTargetInit in parsedTelepactSchema)) {
@@ -1889,9 +1891,9 @@ async function handleMessage(requestMessage, updateHeaders, telepactSchema, midd
1889
1891
  if (requestHeaderValidationFailures.length > 0) {
1890
1892
  return getInvalidErrorMessage('ErrorInvalidRequestHeaders_', requestHeaderValidationFailures, resultUnionType, responseHeaders);
1891
1893
  }
1892
- if ('@auth_' in requestHeaders) {
1894
+ if ('@auth_' in requestHeaders && !bypassAuthForFunction) {
1893
1895
  try {
1894
- const authHeaders = onAuth(requestHeaders) ?? {};
1896
+ const authHeaders = (await onAuth(requestHeaders)) ?? {};
1895
1897
  Object.assign(requestHeaders, authHeaders);
1896
1898
  }
1897
1899
  catch (error) {
@@ -3362,6 +3364,8 @@ class Alias extends NodeBase {
3362
3364
  * instance of the `source` anchor before this node.
3363
3365
  */
3364
3366
  resolve(doc, ctx) {
3367
+ if (ctx?.maxAliasCount === 0)
3368
+ throw new ReferenceError('Alias resolution is disabled');
3365
3369
  let nodes;
3366
3370
  if (ctx?.aliasResolveCache) {
3367
3371
  nodes = ctx.aliasResolveCache;
@@ -4492,18 +4496,18 @@ const isMergeKey = (ctx, key) => (merge.identify(key) ||
4492
4496
  merge.identify(key.value))) &&
4493
4497
  ctx?.doc.schema.tags.some(tag => tag.tag === merge.tag && tag.default);
4494
4498
  function addMergeToJSMap(ctx, map, value) {
4495
- value = ctx && isAlias(value) ? value.resolve(ctx.doc) : value;
4496
- if (isSeq(value))
4497
- for (const it of value.items)
4499
+ const source = resolveAliasValue(ctx, value);
4500
+ if (isSeq(source))
4501
+ for (const it of source.items)
4498
4502
  mergeValue(ctx, map, it);
4499
- else if (Array.isArray(value))
4500
- for (const it of value)
4503
+ else if (Array.isArray(source))
4504
+ for (const it of source)
4501
4505
  mergeValue(ctx, map, it);
4502
4506
  else
4503
- mergeValue(ctx, map, value);
4507
+ mergeValue(ctx, map, source);
4504
4508
  }
4505
4509
  function mergeValue(ctx, map, value) {
4506
- const source = ctx && isAlias(value) ? value.resolve(ctx.doc) : value;
4510
+ const source = resolveAliasValue(ctx, value);
4507
4511
  if (!isMap(source))
4508
4512
  throw new Error('Merge sources must be maps or map aliases');
4509
4513
  const srcMap = source.toJSON(null, ctx, Map);
@@ -4526,6 +4530,9 @@ function mergeValue(ctx, map, value) {
4526
4530
  }
4527
4531
  return map;
4528
4532
  }
4533
+ function resolveAliasValue(ctx, value) {
4534
+ return ctx && isAlias(value) ? value.resolve(ctx.doc, ctx) : value;
4535
+ }
4529
4536
 
4530
4537
  function addPairToJSMap(ctx, map, { key, value }) {
4531
4538
  if (isNode(key) && key.addToJSMap)
@@ -5077,7 +5084,8 @@ function stringifyNumber({ format, minFractionDigits, tag, value }) {
5077
5084
  if (!format &&
5078
5085
  minFractionDigits &&
5079
5086
  (!tag || tag === 'tag:yaml.org,2002:float') &&
5080
- /^\d/.test(n)) {
5087
+ /^-?\d/.test(n) &&
5088
+ !n.includes('e')) {
5081
5089
  let i = n.indexOf('.');
5082
5090
  if (i < 0) {
5083
5091
  i = n.length;
@@ -7336,7 +7344,7 @@ function doubleQuotedValue(source, onError) {
7336
7344
  next = source[++i + 1];
7337
7345
  }
7338
7346
  else if (next === 'x' || next === 'u' || next === 'U') {
7339
- const length = { x: 2, u: 4, U: 8 }[next];
7347
+ const length = next === 'x' ? 2 : next === 'u' ? 4 : 8;
7340
7348
  res += parseCharCode(source, i + 1, length, onError);
7341
7349
  i += length;
7342
7350
  }
@@ -7406,12 +7414,14 @@ function parseCharCode(source, offset, length, onError) {
7406
7414
  const cc = source.substr(offset, length);
7407
7415
  const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
7408
7416
  const code = ok ? parseInt(cc, 16) : NaN;
7409
- if (isNaN(code)) {
7417
+ try {
7418
+ return String.fromCodePoint(code);
7419
+ }
7420
+ catch {
7410
7421
  const raw = source.substr(offset - 2, length + 2);
7411
7422
  onError(offset - 2, 'BAD_DQ_ESCAPE', `Invalid escape sequence ${raw}`);
7412
7423
  return raw;
7413
7424
  }
7414
- return String.fromCodePoint(code);
7415
7425
  }
7416
7426
 
7417
7427
  function composeScalar(ctx, token, tagToken, onError) {
@@ -1851,6 +1851,7 @@ var Telepact = (function (exports, msgpackr, crc32) {
1851
1851
  return new Message(headers, { ErrorUnknown_: { caseId: error.caseId } });
1852
1852
  }
1853
1853
 
1854
+ const INTERNAL_FUNCTIONS_BYPASSING_AUTH = new Set(['fn.ping_', 'fn.api_']);
1854
1855
  async function handleMessage(requestMessage, updateHeaders, telepactSchema, middleware, functionRouter, onError, onAuth) {
1855
1856
  const responseHeaders = {};
1856
1857
  const requestHeaders = requestMessage.headers;
@@ -1860,6 +1861,7 @@ var Telepact = (function (exports, msgpackr, crc32) {
1860
1861
  updateHeaders?.(requestHeaders);
1861
1862
  const requestTargetInit = requestEntry[0];
1862
1863
  const requestPayload = requestEntry[1];
1864
+ const bypassAuthForFunction = INTERNAL_FUNCTIONS_BYPASSING_AUTH.has(requestTargetInit);
1863
1865
  let unknownTarget;
1864
1866
  let requestTarget;
1865
1867
  if (!(requestTargetInit in parsedTelepactSchema)) {
@@ -1889,9 +1891,9 @@ var Telepact = (function (exports, msgpackr, crc32) {
1889
1891
  if (requestHeaderValidationFailures.length > 0) {
1890
1892
  return getInvalidErrorMessage('ErrorInvalidRequestHeaders_', requestHeaderValidationFailures, resultUnionType, responseHeaders);
1891
1893
  }
1892
- if ('@auth_' in requestHeaders) {
1894
+ if ('@auth_' in requestHeaders && !bypassAuthForFunction) {
1893
1895
  try {
1894
- const authHeaders = onAuth(requestHeaders) ?? {};
1896
+ const authHeaders = (await onAuth(requestHeaders)) ?? {};
1895
1897
  Object.assign(requestHeaders, authHeaders);
1896
1898
  }
1897
1899
  catch (error) {
@@ -3362,6 +3364,8 @@ var Telepact = (function (exports, msgpackr, crc32) {
3362
3364
  * instance of the `source` anchor before this node.
3363
3365
  */
3364
3366
  resolve(doc, ctx) {
3367
+ if (ctx?.maxAliasCount === 0)
3368
+ throw new ReferenceError('Alias resolution is disabled');
3365
3369
  let nodes;
3366
3370
  if (ctx?.aliasResolveCache) {
3367
3371
  nodes = ctx.aliasResolveCache;
@@ -4492,18 +4496,18 @@ var Telepact = (function (exports, msgpackr, crc32) {
4492
4496
  merge.identify(key.value))) &&
4493
4497
  ctx?.doc.schema.tags.some(tag => tag.tag === merge.tag && tag.default);
4494
4498
  function addMergeToJSMap(ctx, map, value) {
4495
- value = ctx && isAlias(value) ? value.resolve(ctx.doc) : value;
4496
- if (isSeq(value))
4497
- for (const it of value.items)
4499
+ const source = resolveAliasValue(ctx, value);
4500
+ if (isSeq(source))
4501
+ for (const it of source.items)
4498
4502
  mergeValue(ctx, map, it);
4499
- else if (Array.isArray(value))
4500
- for (const it of value)
4503
+ else if (Array.isArray(source))
4504
+ for (const it of source)
4501
4505
  mergeValue(ctx, map, it);
4502
4506
  else
4503
- mergeValue(ctx, map, value);
4507
+ mergeValue(ctx, map, source);
4504
4508
  }
4505
4509
  function mergeValue(ctx, map, value) {
4506
- const source = ctx && isAlias(value) ? value.resolve(ctx.doc) : value;
4510
+ const source = resolveAliasValue(ctx, value);
4507
4511
  if (!isMap(source))
4508
4512
  throw new Error('Merge sources must be maps or map aliases');
4509
4513
  const srcMap = source.toJSON(null, ctx, Map);
@@ -4526,6 +4530,9 @@ var Telepact = (function (exports, msgpackr, crc32) {
4526
4530
  }
4527
4531
  return map;
4528
4532
  }
4533
+ function resolveAliasValue(ctx, value) {
4534
+ return ctx && isAlias(value) ? value.resolve(ctx.doc, ctx) : value;
4535
+ }
4529
4536
 
4530
4537
  function addPairToJSMap(ctx, map, { key, value }) {
4531
4538
  if (isNode(key) && key.addToJSMap)
@@ -5077,7 +5084,8 @@ var Telepact = (function (exports, msgpackr, crc32) {
5077
5084
  if (!format &&
5078
5085
  minFractionDigits &&
5079
5086
  (!tag || tag === 'tag:yaml.org,2002:float') &&
5080
- /^\d/.test(n)) {
5087
+ /^-?\d/.test(n) &&
5088
+ !n.includes('e')) {
5081
5089
  let i = n.indexOf('.');
5082
5090
  if (i < 0) {
5083
5091
  i = n.length;
@@ -7336,7 +7344,7 @@ var Telepact = (function (exports, msgpackr, crc32) {
7336
7344
  next = source[++i + 1];
7337
7345
  }
7338
7346
  else if (next === 'x' || next === 'u' || next === 'U') {
7339
- const length = { x: 2, u: 4, U: 8 }[next];
7347
+ const length = next === 'x' ? 2 : next === 'u' ? 4 : 8;
7340
7348
  res += parseCharCode(source, i + 1, length, onError);
7341
7349
  i += length;
7342
7350
  }
@@ -7406,12 +7414,14 @@ var Telepact = (function (exports, msgpackr, crc32) {
7406
7414
  const cc = source.substr(offset, length);
7407
7415
  const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc);
7408
7416
  const code = ok ? parseInt(cc, 16) : NaN;
7409
- if (isNaN(code)) {
7417
+ try {
7418
+ return String.fromCodePoint(code);
7419
+ }
7420
+ catch {
7410
7421
  const raw = source.substr(offset - 2, length + 2);
7411
7422
  onError(offset - 2, 'BAD_DQ_ESCAPE', `Invalid escape sequence ${raw}`);
7412
7423
  return raw;
7413
7424
  }
7414
- return String.fromCodePoint(code);
7415
7425
  }
7416
7426
 
7417
7427
  function composeScalar(ctx, token, tagToken, onError) {
@@ -6,6 +6,7 @@ import { Response } from './Response.js';
6
6
  import { FunctionRouter, FunctionRoutes } from './FunctionRouter.js';
7
7
  import { TelepactError } from './TelepactError.js';
8
8
  export type Middleware = (requestMessage: Message, functionRouter: FunctionRouter) => Promise<Message>;
9
+ export type AuthHandler = (headers: Record<string, any>) => Record<string, any> | Promise<Record<string, any>>;
9
10
  export type UpdateHeaders = (headers: Record<string, any>) => void;
10
11
  export { FunctionRouter } from './FunctionRouter.js';
11
12
  export type { FunctionRoute, FunctionRoutes } from './FunctionRouter.js';
@@ -15,7 +16,7 @@ export declare class Server {
15
16
  onError: (error: TelepactError) => void;
16
17
  onRequest: (message: Message) => void;
17
18
  onResponse: (message: Message) => void;
18
- onAuth: (headers: Record<string, any>) => Record<string, any>;
19
+ onAuth: AuthHandler;
19
20
  telepactSchema: TelepactSchema;
20
21
  serializer: Serializer;
21
22
  constructor(telepactSchema: TelepactSchema, functionRouter: FunctionRouter | FunctionRoutes, options: ServerOptions);
@@ -25,7 +26,7 @@ export declare class ServerOptions {
25
26
  onError: (error: TelepactError) => void;
26
27
  onRequest: (message: Message) => void;
27
28
  onResponse: (message: Message) => void;
28
- onAuth: (headers: Record<string, any>) => Record<string, any>;
29
+ onAuth: AuthHandler;
29
30
  middleware: Middleware;
30
31
  authRequired: boolean;
31
32
  serialization: Serialization;
@@ -1 +1 @@
1
- {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../src/Server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Server.js","sourceRoot":"","sources":["../../src/Server.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { Message } from '../Message.js';
2
2
  import { TelepactSchema } from '../TelepactSchema.js';
3
3
  import { TelepactError } from '../TelepactError.js';
4
- import { UpdateHeaders } from '../Server.js';
4
+ import type { AuthHandler, UpdateHeaders } from '../Server.js';
5
5
  export declare function handleMessage(requestMessage: Message, updateHeaders: UpdateHeaders | undefined, telepactSchema: TelepactSchema, middleware: (requestMessage: Message, functionRouter: {
6
6
  route: (message: Message) => Promise<Message>;
7
7
  }) => Promise<Message>, functionRouter: {
8
8
  route: (message: Message) => Promise<Message>;
9
- }, onError: (error: TelepactError) => void, onAuth: (headers: Record<string, any>) => Record<string, any>): Promise<Message>;
9
+ }, onError: (error: TelepactError) => void, onAuth: AuthHandler): Promise<Message>;
@@ -24,6 +24,7 @@ import { ValidateContext } from './validation/ValidateContext.js';
24
24
  import { serverBase64Decode } from './binary/ServerBase64Decode.js';
25
25
  import { TelepactError } from '../TelepactError.js';
26
26
  import { buildUnknownErrorMessage } from './UnknownError.js';
27
+ const INTERNAL_FUNCTIONS_BYPASSING_AUTH = new Set(['fn.ping_', 'fn.api_']);
27
28
  export async function handleMessage(requestMessage, updateHeaders, telepactSchema, middleware, functionRouter, onError, onAuth) {
28
29
  const responseHeaders = {};
29
30
  const requestHeaders = requestMessage.headers;
@@ -33,6 +34,7 @@ export async function handleMessage(requestMessage, updateHeaders, telepactSchem
33
34
  updateHeaders?.(requestHeaders);
34
35
  const requestTargetInit = requestEntry[0];
35
36
  const requestPayload = requestEntry[1];
37
+ const bypassAuthForFunction = INTERNAL_FUNCTIONS_BYPASSING_AUTH.has(requestTargetInit);
36
38
  let unknownTarget;
37
39
  let requestTarget;
38
40
  if (!(requestTargetInit in parsedTelepactSchema)) {
@@ -62,9 +64,9 @@ export async function handleMessage(requestMessage, updateHeaders, telepactSchem
62
64
  if (requestHeaderValidationFailures.length > 0) {
63
65
  return getInvalidErrorMessage('ErrorInvalidRequestHeaders_', requestHeaderValidationFailures, resultUnionType, responseHeaders);
64
66
  }
65
- if ('@auth_' in requestHeaders) {
67
+ if ('@auth_' in requestHeaders && !bypassAuthForFunction) {
66
68
  try {
67
- const authHeaders = onAuth(requestHeaders) ?? {};
69
+ const authHeaders = (await onAuth(requestHeaders)) ?? {};
68
70
  Object.assign(requestHeaders, authHeaders);
69
71
  }
70
72
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"HandleMessage.js","sourceRoot":"","sources":["../../../src/internal/HandleMessage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HandleMessage.js","sourceRoot":"","sources":["../../../src/internal/HandleMessage.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { UpdateHeaders } from '../Server.js';
7
7
  export type ErrorHandler = (error: TelepactError) => void;
8
8
  export type RequestHandler = (message: Message) => void;
9
9
  export type ResponseHandler = (message: Message) => void;
10
- export type AuthHandler = (headers: Record<string, any>) => Record<string, any>;
10
+ export type AuthHandler = (headers: Record<string, any>) => Record<string, any> | Promise<Record<string, any>>;
11
11
  export type FunctionRouter = {
12
12
  route: (message: Message) => Promise<Message>;
13
13
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "telepact",
3
- "version": "1.0.0-alpha.326",
3
+ "version": "1.0.0-alpha.334",
4
4
  "description": "The Typescript Telepact library",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",