ts-mls
Version:
[](https://github.com/LukaJCB/ts-mls/actions/workflows/ci.yml) [](https://badge.fury.io/js/ts-mls) [ • 3.86 kB
TypeScript
import { Decoder } from "./codec/tlsDecoder";
import { Encoder } from "./codec/tlsEncoder";
import { CiphersuiteName } from "./crypto/ciphersuite";
import { Extension } from "./extension";
import { KeyPackage } from "./keyPackage";
import { PreSharedKeyID } from "./presharedkey";
import { ProtocolVersionName } from "./protocolVersion";
import { LeafNodeUpdate } from "./leafNode";
export type Add = {
keyPackage: KeyPackage;
};
export declare const encodeAdd: Encoder<Add>;
export declare const decodeAdd: Decoder<Add>;
export type Update = {
leafNode: LeafNodeUpdate;
};
export declare const encodeUpdate: Encoder<Update>;
export declare const decodeUpdate: Decoder<Update>;
export type Remove = {
removed: number;
};
export declare const encodeRemove: Encoder<Remove>;
export declare const decodeRemove: Decoder<Remove>;
export type PSK = {
preSharedKeyId: PreSharedKeyID;
};
export declare const encodePSK: Encoder<PSK>;
export declare const decodePSK: Decoder<PSK>;
export type Reinit = {
groupId: Uint8Array;
version: ProtocolVersionName;
cipherSuite: CiphersuiteName;
extensions: Extension[];
};
export declare const encodeReinit: Encoder<Reinit>;
export declare const decodeReinit: Decoder<Reinit>;
export type ExternalInit = {
kemOutput: Uint8Array;
};
export declare const encodeExternalInit: Encoder<ExternalInit>;
export declare const decodeExternalInit: Decoder<ExternalInit>;
export type GroupContextExtensions = {
extensions: Extension[];
};
export declare const encodeGroupContextExtensions: Encoder<GroupContextExtensions>;
export declare const decodeGroupContextExtensions: Decoder<GroupContextExtensions>;
export type ProposalAdd = {
proposalType: "add";
add: Add;
};
export type ProposalUpdate = {
proposalType: "update";
update: Update;
};
export type ProposalRemove = {
proposalType: "remove";
remove: Remove;
};
export type ProposalPSK = {
proposalType: "psk";
psk: PSK;
};
export type ProposalReinit = {
proposalType: "reinit";
reinit: Reinit;
};
export type ProposalExternalInit = {
proposalType: "external_init";
externalInit: ExternalInit;
};
export type ProposalGroupContextExtensions = {
proposalType: "group_context_extensions";
groupContextExtensions: GroupContextExtensions;
};
export type ProposalCustom = {
proposalType: number;
proposalData: Uint8Array;
};
export type Proposal = ProposalAdd | ProposalUpdate | ProposalRemove | ProposalPSK | ProposalReinit | ProposalExternalInit | ProposalGroupContextExtensions | ProposalCustom;
export declare const encodeProposalAdd: Encoder<ProposalAdd>;
export declare const encodeProposalUpdate: Encoder<ProposalUpdate>;
export declare const encodeProposalRemove: Encoder<ProposalRemove>;
export declare const encodeProposalPSK: Encoder<ProposalPSK>;
export declare const encodeProposalReinit: Encoder<ProposalReinit>;
export declare const encodeProposalExternalInit: Encoder<ProposalExternalInit>;
export declare const encodeProposalGroupContextExtensions: Encoder<ProposalGroupContextExtensions>;
export declare const encodeProposalCustom: Encoder<ProposalCustom>;
export declare const encodeProposal: Encoder<Proposal>;
export declare const decodeProposalAdd: Decoder<ProposalAdd>;
export declare const decodeProposalUpdate: Decoder<ProposalUpdate>;
export declare const decodeProposalRemove: Decoder<ProposalRemove>;
export declare const decodeProposalPSK: Decoder<ProposalPSK>;
export declare const decodeProposalReinit: Decoder<ProposalReinit>;
export declare const decodeProposalExternalInit: Decoder<ProposalExternalInit>;
export declare const decodeProposalGroupContextExtensions: Decoder<ProposalGroupContextExtensions>;
export declare function decodeProposalCustom(proposalType: number): Decoder<ProposalCustom>;
export declare const decodeProposal: Decoder<Proposal>;