You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
736 B

export enum PacketResponseCode {
AccessChallenge = 'Access-Challenge',
AccessAccept = 'Access-Accept',
AccessReject = 'Access-Reject',
}
export interface IPacketHandlerResult {
code?: PacketResponseCode;
attributes?: [string, Buffer | string][];
}
export interface IPacketAttributes {
[key: string]: string | Buffer;
}
export interface IPacket {
attributes: { [key: string]: string | Buffer };
authenticator?: Buffer;
credentialMiddleware?: (username: string, password: string) => [string, string];
}
export interface IPacketHandler {
/** handlingType is the attreibute ID of the currently processing type (e.g. TTLS, GTC, MD5,..) */
handlePacket(packet: IPacket, handlingType?: number): Promise<IPacketHandlerResult>;
}