@maverick0351/odin-protocol-js
Version:
JavaScript/TypeScript SDK for ODIN v1.0 state capsule protocol
63 lines • 1.67 kB
TypeScript
import { CapsuleType, EncodingType, CompressionType } from './constants';
/**
* ODIN v1.0 State Capsule
* Represents a standardized container for AI consciousness and neural state data
*/
export interface OdinCapsule {
magic: Uint8Array;
version: string;
type: CapsuleType;
encoding: EncodingType;
compression: CompressionType;
timestamp: number;
creatorId: Uint8Array;
signature: Uint8Array;
checksum: Uint8Array;
payload: Uint8Array;
}
/**
* Options for creating ODIN capsules
*/
export interface CapsuleOptions {
type?: CapsuleType;
encoding?: EncodingType;
compression?: CompressionType;
creatorId?: Uint8Array | string;
privateKey?: Uint8Array;
timestamp?: number;
}
/**
* ODIN Protocol SDK - Main class for working with state capsules
*/
export declare class OdinProtocol {
private defaultCreatorId;
private defaultPrivateKey?;
constructor(creatorId?: Uint8Array | string, privateKey?: Uint8Array);
/**
* Pack data into an ODIN capsule
*/
pack(data: any, options?: CapsuleOptions): Uint8Array;
/**
* Unpack an ODIN capsule
*/
unpack(data: Uint8Array): {
capsule: OdinCapsule;
payload: any;
};
/**
* Verify capsule signature
*/
verify(data: Uint8Array, publicKey: Uint8Array): boolean;
/**
* Generate a new key pair for signing
*/
static generateKeyPair(): {
publicKey: Uint8Array;
privateKey: Uint8Array;
};
/**
* Get capsule info without unpacking payload
*/
inspect(data: Uint8Array): Omit<OdinCapsule, 'payload'>;
}
//# sourceMappingURL=odin.d.ts.map