zklib-ts
Version:
Unofficial zkteco library allows Node.js developers to easily interface with ZK BioMetric Fingerprint Attendance Devices
71 lines (70 loc) • 2.74 kB
TypeScript
import { User } from '../models/User';
import { Attendance } from "../models/Attendance";
export interface DeviceInfo {
userCounts: number;
logCounts: number;
logCapacity: number;
}
export type UserData28 = Omit<User, 'password' | 'group_id' | 'card' | 'repack29' | 'repack73'>;
export interface RecordData16 {
record_time: Date;
user_id: string;
ip?: string;
}
export type RealTimeLog = RecordData16;
interface UDPHeader {
commandId: number;
checkSum: number;
sessionId: number;
replyId: number;
}
interface TCPHeader extends UDPHeader {
payloadSize: number;
}
export type FreeSizes = {
/** Number of users */
userCounts: number;
/** Number of logs */
logCounts: number;
/** Number of fingerprints */
fingerCount: number;
/** Number of admins */
adminCount: number;
/** Number or opLogs, maybe access control events? */
opLogCount: number;
/** Capacity of logs in bytes */
logCapacity: number;
/** Capacity of fingerprints */
fingerCapacity: number;
/** Capacity of users */
userCapacity: number;
/** Capacity of oplog */
attLogCapacity: number;
/** Number of available finger templates */
fingerAvailable: number;
/** Number of available Users */
userAvailable: number;
/** Number of attendanceLog available */
attLogAvailable: number;
/** Number of faces */
faceCount: number;
/** Capacity of faces */
faceCapacity: number;
};
export declare const createUDPHeader: (command: number, sessionId: number, replyId: number, data: any) => Buffer;
export declare const createTCPHeader: (command: number, sessionId: number, replyId: number, data: any) => Buffer;
export declare const removeTcpHeader: (buf: Buffer) => Buffer;
export declare const parseTimeToDate: (time: number) => Date;
export declare const decodeUserData28: (userData: Buffer) => UserData28;
export declare const decodeUserData72: (userData: Buffer) => User;
export declare const decodeRecordData40: (recordData: Buffer) => Attendance;
export declare const decodeRecordData16: (recordData: Buffer) => RecordData16;
export declare const decodeRecordRealTimeLog18: (recordData: Buffer) => RealTimeLog;
export declare const decodeRecordRealTimeLog52: (recordData: Buffer) => RealTimeLog;
export declare const decodeUDPHeader: (header: Buffer) => UDPHeader;
export declare const decodeTCPHeader: (header: Buffer) => TCPHeader;
export declare const exportErrorMessage: (commandValue: number) => string;
export declare const checkNotEventTCP: (data: Buffer) => boolean;
export declare const checkNotEventUDP: (data: Buffer) => boolean;
export declare const authKey: (comKey: number, sessionId: number) => number[];
export {};