@nextera.one/axis-server-sdk 1.1.0 → 1.2.1
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/core/index.d.mts +2 -96
- package/dist/core/index.d.ts +2 -96
- package/dist/core/index.js +94 -294
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.mjs +74 -205
- package/dist/core/index.mjs.map +1 -1
- package/dist/index.d.mts +133 -3
- package/dist/index.d.ts +133 -3
- package/dist/index.js +662 -426
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +616 -321
- package/dist/index.mjs.map +1 -1
- package/package.json +3 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
+
import { ModuleRef } from '@nestjs/core';
|
|
1
2
|
import { AxisFrame as AxisFrame$1 } from './core/index.js';
|
|
2
|
-
export {
|
|
3
|
+
export { AxisBinaryFrame, AxisFrameZ, computeReceiptHash, computeSignaturePayload, decodeFrame, encodeFrame, generateEd25519KeyPair, getSignTarget, sha256, signFrame, verifyFrameSignature } from './core/index.js';
|
|
4
|
+
export { AXIS_MAGIC, AXIS_VERSION, TLV as AxisTlvType, BodyProfile, ERR_BAD_SIGNATURE, ERR_CONTRACT_VIOLATION, ERR_INVALID_PACKET, ERR_REPLAY_DETECTED, FLAG_BODY_TLV, FLAG_CHAIN_REQ, FLAG_HAS_WITNESS, MAX_BODY_LEN, MAX_FRAME_LEN, MAX_HDR_LEN, MAX_SIG_LEN, NCERT_ALG, NCERT_EXP, NCERT_ISSUER_KID, NCERT_KID, NCERT_NBF, NCERT_NODE_ID, NCERT_PAYLOAD, NCERT_PUB, NCERT_SCOPE, NCERT_SIG, PROOF_CAPSULE, PROOF_JWT, PROOF_LOOM, PROOF_MTLS, PROOF_NONE, PROOF_WITNESS, ProofType, TLV, TLV_ACTOR_ID, TLV_AUD, TLV_BODY_ARR, TLV_BODY_OBJ, TLV_CAPSULE, TLV_EFFECT, TLV_ERROR_CODE, TLV_ERROR_MSG, TLV_INDEX, TLV_INTENT, TLV_KID, TLV_LOOM_PRESENCE_ID, TLV_LOOM_THREAD_HASH, TLV_LOOM_WRIT, TLV_NODE, TLV_NODE_CERT_HASH, TLV_NODE_KID, TLV_NONCE, TLV_OFFSET, TLV_OK, TLV_PID, TLV_PREV_HASH, TLV_PROOF_REF, TLV_PROOF_TYPE, TLV_REALM, TLV_RECEIPT_HASH, TLV_RID, TLV_SHA256_CHUNK, TLV_TRACE_ID, TLV_TS, TLV_UPLOAD_ID, decodeArray, decodeObject, decodeTLVs, decodeTLVsList, decodeVarint, encodeTLVs, encodeVarint, varintLength } from '@nextera.one/axis-protocol';
|
|
3
5
|
import 'zod';
|
|
4
6
|
|
|
5
7
|
declare const HANDLER_METADATA_KEY = "axis:handler";
|
|
@@ -37,6 +39,12 @@ interface IntentOptions {
|
|
|
37
39
|
}
|
|
38
40
|
declare function Intent(action: string, options?: IntentOptions): MethodDecorator;
|
|
39
41
|
|
|
42
|
+
declare const INTENT_BODY_KEY = "axis:intent:body";
|
|
43
|
+
declare function IntentBody(decoder: (buf: Buffer) => any): MethodDecorator;
|
|
44
|
+
|
|
45
|
+
declare const INTENT_SENSORS_KEY = "axis:intent:sensors";
|
|
46
|
+
declare function IntentSensors(sensors: Function[]): MethodDecorator;
|
|
47
|
+
|
|
40
48
|
declare const TLV_FIELDS_KEY = "axis:tlv:fields";
|
|
41
49
|
declare const TLV_VALIDATORS_KEY = "axis:tlv:validators";
|
|
42
50
|
type TlvFieldKind = 'utf8' | 'u64' | 'bytes' | 'bytes16' | 'bool' | 'obj' | 'arr';
|
|
@@ -94,6 +102,20 @@ declare abstract class AxisResponseDto extends AxisTlvDto {
|
|
|
94
102
|
updated_by?: string;
|
|
95
103
|
}
|
|
96
104
|
|
|
105
|
+
interface IntentSchema {
|
|
106
|
+
intent: string;
|
|
107
|
+
version: number;
|
|
108
|
+
bodyProfile: 'TLV_MAP' | 'RAW' | 'TLV_OBJ' | 'TLV_ARR';
|
|
109
|
+
fields: Array<{
|
|
110
|
+
name: string;
|
|
111
|
+
tlv: number;
|
|
112
|
+
kind: IntentTlvField['kind'];
|
|
113
|
+
required?: boolean;
|
|
114
|
+
maxLen?: number;
|
|
115
|
+
max?: string;
|
|
116
|
+
scope?: 'header' | 'body';
|
|
117
|
+
}>;
|
|
118
|
+
}
|
|
97
119
|
interface AxisEffect {
|
|
98
120
|
ok: boolean;
|
|
99
121
|
effect: string;
|
|
@@ -102,11 +124,34 @@ interface AxisEffect {
|
|
|
102
124
|
metadata?: any;
|
|
103
125
|
}
|
|
104
126
|
declare class IntentRouter {
|
|
127
|
+
private readonly moduleRef?;
|
|
128
|
+
private readonly logger;
|
|
129
|
+
private static readonly BUILTIN_INTENTS;
|
|
105
130
|
private handlers;
|
|
131
|
+
private intentSensors;
|
|
132
|
+
private intentDecoders;
|
|
133
|
+
private intentSchemas;
|
|
134
|
+
private intentValidators;
|
|
135
|
+
private intentKinds;
|
|
136
|
+
constructor(moduleRef?: ModuleRef | undefined);
|
|
137
|
+
getSchema(intent: string): IntentSchema | undefined;
|
|
138
|
+
getValidators(intent: string): Map<number, TlvValidatorFn[]> | undefined;
|
|
139
|
+
has(intent: string): boolean;
|
|
140
|
+
getRegisteredIntents(): string[];
|
|
141
|
+
getIntentEntry(intent: string): {
|
|
142
|
+
schema?: IntentSchema;
|
|
143
|
+
validators?: Map<number, TlvValidatorFn[]>;
|
|
144
|
+
hasSensors: boolean;
|
|
145
|
+
builtin: boolean;
|
|
146
|
+
kind?: IntentKind;
|
|
147
|
+
} | null;
|
|
106
148
|
register(intent: string, handler: any): void;
|
|
107
149
|
registerHandler(instance: any): void;
|
|
108
150
|
route(frame: AxisFrame$1): Promise<AxisEffect>;
|
|
109
|
-
private
|
|
151
|
+
private logIntent;
|
|
152
|
+
registerIntentMeta(intent: string, proto: object, methodName: string): void;
|
|
153
|
+
private runIntentSensors;
|
|
154
|
+
private storeSchema;
|
|
110
155
|
}
|
|
111
156
|
|
|
112
157
|
declare const ATS1_HDR: {
|
|
@@ -437,6 +482,10 @@ interface AxisCapsulePayload {
|
|
|
437
482
|
constraints?: AxisCapsuleConstraints;
|
|
438
483
|
meta?: Record<string, unknown>;
|
|
439
484
|
}
|
|
485
|
+
interface AxisCapsule {
|
|
486
|
+
payload: AxisCapsulePayload;
|
|
487
|
+
sig: AxisSig$1;
|
|
488
|
+
}
|
|
440
489
|
interface AxisResponse$1<T = any> {
|
|
441
490
|
ok: boolean;
|
|
442
491
|
pid: string;
|
|
@@ -757,4 +806,85 @@ interface IntentDefinition {
|
|
|
757
806
|
declare function validateFrameShape(frame: any): boolean;
|
|
758
807
|
declare function isTimestampValid(ts: number, skewSeconds?: number): boolean;
|
|
759
808
|
|
|
760
|
-
|
|
809
|
+
type UploadSessionStatus = 'ACTIVE' | 'FINALIZING' | 'COMPLETE' | 'ABORTED';
|
|
810
|
+
interface UploadSessionRecord {
|
|
811
|
+
id?: string;
|
|
812
|
+
fileId: string;
|
|
813
|
+
filename?: string;
|
|
814
|
+
status: UploadSessionStatus | string;
|
|
815
|
+
totalSize?: number;
|
|
816
|
+
chunkSize?: number;
|
|
817
|
+
totalChunks?: number;
|
|
818
|
+
receivedBitmap?: Uint8Array | Buffer | null;
|
|
819
|
+
hashState?: Uint8Array | Buffer | null;
|
|
820
|
+
mimeType?: string | null;
|
|
821
|
+
version?: number;
|
|
822
|
+
}
|
|
823
|
+
interface UploadSessionStore {
|
|
824
|
+
findByFileId(fileId: string): Promise<UploadSessionRecord | null>;
|
|
825
|
+
updateStatus(fileId: string, status: UploadSessionStatus, hashState?: Uint8Array | Buffer | null): Promise<void>;
|
|
826
|
+
}
|
|
827
|
+
interface UploadReceiptSigner {
|
|
828
|
+
signActive(message: Uint8Array): {
|
|
829
|
+
kid: string;
|
|
830
|
+
sig: Uint8Array;
|
|
831
|
+
};
|
|
832
|
+
}
|
|
833
|
+
interface UploadFileStat {
|
|
834
|
+
path: string;
|
|
835
|
+
size: number;
|
|
836
|
+
}
|
|
837
|
+
interface UploadFileStore {
|
|
838
|
+
getFinalPath(fileId: string, filename?: string): string;
|
|
839
|
+
getTempPath(fileId: string): string;
|
|
840
|
+
statFinal(fileId: string, filename?: string): Promise<UploadFileStat>;
|
|
841
|
+
readFinalRange(fileId: string, filename: string | undefined, start: number, length: number): Promise<Buffer>;
|
|
842
|
+
hasTemp(fileId: string): Promise<boolean>;
|
|
843
|
+
moveTempToFinal(fileId: string, filename?: string): Promise<string>;
|
|
844
|
+
createTempReadStream(fileId: string): NodeJS.ReadableStream;
|
|
845
|
+
}
|
|
846
|
+
|
|
847
|
+
declare class AxisFilesDownloadHandler implements AxisHandler {
|
|
848
|
+
private readonly sessions;
|
|
849
|
+
private readonly files;
|
|
850
|
+
private readonly logger;
|
|
851
|
+
readonly name = "axis.files.download";
|
|
852
|
+
readonly open = true;
|
|
853
|
+
readonly description = "File download handler";
|
|
854
|
+
constructor(sessions: UploadSessionStore, files: UploadFileStore);
|
|
855
|
+
execute(body: Uint8Array, headers?: Map<number, Uint8Array>): Promise<any>;
|
|
856
|
+
}
|
|
857
|
+
declare class AxisFilesFinalizeHandler implements AxisHandler {
|
|
858
|
+
private readonly sessions;
|
|
859
|
+
private readonly files;
|
|
860
|
+
private readonly keyring?;
|
|
861
|
+
private readonly logger;
|
|
862
|
+
readonly name = "axis.files.finalize";
|
|
863
|
+
readonly open = false;
|
|
864
|
+
readonly description = "File upload finalization handler";
|
|
865
|
+
constructor(sessions: UploadSessionStore, files: UploadFileStore, keyring?: UploadReceiptSigner | undefined);
|
|
866
|
+
execute(body: Uint8Array, headers?: Map<number, Uint8Array>): Promise<any>;
|
|
867
|
+
}
|
|
868
|
+
|
|
869
|
+
declare const AXIS_UPLOAD_SESSION_STORE = "AXIS_UPLOAD_SESSION_STORE";
|
|
870
|
+
declare const AXIS_UPLOAD_FILE_STORE = "AXIS_UPLOAD_FILE_STORE";
|
|
871
|
+
declare const AXIS_UPLOAD_RECEIPT_SIGNER = "AXIS_UPLOAD_RECEIPT_SIGNER";
|
|
872
|
+
|
|
873
|
+
interface DiskUploadFileStoreOptions {
|
|
874
|
+
uploadDir: string;
|
|
875
|
+
chunkDir: string;
|
|
876
|
+
}
|
|
877
|
+
declare class DiskUploadFileStore implements UploadFileStore {
|
|
878
|
+
private readonly uploadDir;
|
|
879
|
+
private readonly chunkDir;
|
|
880
|
+
constructor(options: DiskUploadFileStoreOptions);
|
|
881
|
+
getFinalPath(fileId: string, filename?: string): string;
|
|
882
|
+
getTempPath(fileId: string): string;
|
|
883
|
+
statFinal(fileId: string, filename?: string): Promise<UploadFileStat>;
|
|
884
|
+
readFinalRange(fileId: string, filename: string | undefined, start: number, length: number): Promise<Buffer>;
|
|
885
|
+
hasTemp(fileId: string): Promise<boolean>;
|
|
886
|
+
moveTempToFinal(fileId: string, filename?: string): Promise<string>;
|
|
887
|
+
createTempReadStream(fileId: string): NodeJS.ReadableStream;
|
|
888
|
+
}
|
|
889
|
+
|
|
890
|
+
export { ATS1_HDR, ATS1_SCHEMA, AXIS_OPCODES, AXIS_UPLOAD_FILE_STORE, AXIS_UPLOAD_RECEIPT_SIGNER, AXIS_UPLOAD_SESSION_STORE, ats1 as Ats1Codec, type Axis1DecodedFrame, type Axis1FrameToEncode, type AxisAlg$1 as AxisAlg, type AxisPacket as AxisBinaryPacket, type AxisCapsule, type AxisCapsuleConstraints, type AxisCapsulePayload, type AxisCrudHandler, type AxisEffect, AxisFilesDownloadHandler, AxisFilesFinalizeHandler, AxisFrame$1 as AxisFrame, type AxisHandler, type AxisHandlerInit, AxisIdDto, type AxisAlg as AxisJsonAlg, type AxisFrame as AxisJsonFrame, type AxisResponse as AxisJsonResponse, type AxisSig as AxisJsonSig, type AxisObservedContext, type AxisPacket$1 as AxisPacket, T as AxisPacketTags, AxisPartialType, type AxisPostSensor, type AxisPreSensor, type AxisRequestContext, AxisResponseDto, type AxisSensor, type AxisSensorInit, type AxisSig$1 as AxisSig, AxisTlvDto, CAPABILITIES, type Capability, type CapsuleMode, ContractViolationError, DEFAULT_CONTRACTS, DEFAULT_TIMEOUT, Decision, DiskUploadFileStore, type DtoSchema, type ExecutionContract, ExecutionMeter, type ExecutionMetrics, FALLBACK_CONTRACT, HANDLER_METADATA_KEY, Handler, INTENT_BODY_KEY, INTENT_METADATA_KEY, INTENT_REQUIREMENTS, INTENT_ROUTES_KEY, INTENT_SENSITIVITY_MAP, INTENT_SENSORS_KEY, INTENT_TIMEOUTS, Intent, IntentBody, type IntentDefinition, type IntentKind, type IntentOptions, type IntentRoute, IntentRouter, IntentSensitivity, IntentSensors, type IntentTlvField, type KeyStatus, PROOF_CAPABILITIES, RESPONSE_TAG_CREATED_AT, RESPONSE_TAG_CREATED_BY, RESPONSE_TAG_ID, RESPONSE_TAG_UPDATED_AT, RESPONSE_TAG_UPDATED_BY, type ReceiptEffect, RiskDecision, type RiskEvaluation, type RiskSignal, Schema2002_PasskeyLoginOptionsRes, Schema2011_PasskeyLoginVerifyReq, Schema2012_PasskeyLoginVerifyRes, Schema2021_PasskeyRegisterOptionsReq, type SensorDecision, SensorDecisions, type SensorInput, type SensorMinifiedDecision, type SensorPhaseMetadata, TLV_FIELDS_KEY, TLV_VALIDATORS_KEY, TlvEnum, TlvField, type TlvFieldKind, type TlvFieldMeta, type TlvFieldOptions, TlvMinLen, TlvRange, TlvUtf8Pattern, TlvValidate, type TlvValidatorFn, type TlvValidatorMeta, type UploadFileStat, type UploadFileStore, type UploadReceiptSigner, type UploadSessionRecord, type UploadSessionStatus, type UploadSessionStore, axis1SigningBytes, b64urlDecode, b64urlDecodeString, b64urlEncode, b64urlEncodeString, buildAts1Hdr, buildDtoDecoder, buildPacket, buildReceiptHash, buildTLVs, bytes, canAccessResource, canonicalJson, canonicalJsonExcluding, classifyIntent, decodeAxis1Frame, encVarint, encodeAxis1Frame, extractDtoSchema, hasScope, isAdminOpcode, isKnownOpcode, isTimestampValid, nonce16, normalizeSensorDecision, packPasskeyLoginOptionsReq, packPasskeyLoginOptionsRes, packPasskeyLoginVerifyReq, packPasskeyLoginVerifyRes, packPasskeyRegisterOptionsReq, parseScope, resolveTimeout, sensitivityName, tlv, u64be, unpackPasskeyLoginOptionsReq, unpackPasskeyLoginVerifyReq, unpackPasskeyRegisterOptionsReq, utf8, validateFrameShape, varintU };
|