Commit cc0c8611 authored by 曾思程's avatar 曾思程

进行类型导出重构

parent fb1bc19d
import { Jensen } from './src/jensen'; import { Jensen } from './src/jensen';
export * from './type'
export default Jensen; export default Jensen;
import { jensenType } from '../type';
import { Logger as internalLogger } from './utils/utils'; import { Logger as internalLogger } from './utils/utils';
const QUERY_DEVICE_INFO = 0x01; const QUERY_DEVICE_INFO = 0x01;
...@@ -47,6 +48,12 @@ const COMMAND_NAMES = [ ...@@ -47,6 +48,12 @@ const COMMAND_NAMES = [
'factory reset', 'factory reset',
]; ];
/**
*
* @typedef {jensenType.Jensen} Jensen
* @param {typeof internalLogger} log
*/
function Jensen(log) { function Jensen(log) {
const Logger = log || internalLogger const Logger = log || internalLogger
let device = null; let device = null;
......
...@@ -34,15 +34,15 @@ export const Logger = { ...@@ -34,15 +34,15 @@ export const Logger = {
let time = new Date(log.time); let time = new Date(log.time);
console.info( console.info(
'[' + '[' +
(log.level === 'error' ? 'x' : '*') + (log.level === 'error' ? 'x' : '*') +
'][' + '][' +
time.toLocaleString() + time.toLocaleString() +
'](' + '](' +
log.module + log.module +
' - ' + ' - ' +
log.procedure + log.procedure +
') ' + ') ' +
log.message, log.message,
); );
}, },
filter(module, procedure) { filter(module, procedure) {
......
import { Logger } from './src/utils/utils' import { Logger } from './src/utils/utils'
declare module 'jensen' { export type DeviceInfo = {
export type DeviceInfo = { sn: string;
sn: string; versionNumber: number;
versionNumber: number; versionCode: string;
versionCode: string; };
}; export type ReturnStruct = {
export type ReturnStruct = { common: { result: 'failed' | 'success' };
common: { result: 'failed' | 'success' }; };
}; export type FileInfo = {
export type FileInfo = { name: string;
name: string; createDate: string;
createDate: string; createTime: string;
createTime: string; time: Date;
time: Date; duration: number;
duration: number; length: number;
length: number; signature: string;
signature: string; };
};
export default class Jensen { declare module jensenType {
class Jensen {
constructor(log: typeof Logger) constructor(log: typeof Logger)
onconnect: Function; onconnect: Function;
onmessage: (data: any) => void | null; onmessage: (data: any) => void | null;
constructor(); connect: () => Promise<void>;
connect(): Promise<void>; init: () => Promise<boolean>;
init(): Promise<boolean>;
getDeviceInfo: (time?: number) => Promise<DeviceInfo>; getDeviceInfo: (time?: number) => Promise<DeviceInfo>;
listFiles: (time?: number) => Promise<FileInfo[]>; listFiles: (time?: number) => Promise<FileInfo[]>;
tryconnect: () => Promise<boolean>; tryconnect: () => Promise<boolean>;
...@@ -91,4 +91,3 @@ declare module 'jensen' { ...@@ -91,4 +91,3 @@ declare module 'jensen' {
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment