-
Notifications
You must be signed in to change notification settings - Fork 50
/
base.d.ts
153 lines (130 loc) · 2.34 KB
/
base.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
export type IdCardSuccessResult = {
valid: true;
/**
* 性别
*
* @example M->男 F->女
*/
gender: "M" | "F";
province: {
/**
* 6位省份编号
*
* @example 440000
*/
code: string;
/**
* 名称
*
* @example 广东省
*/
text: string;
};
city: {
/**
* 6位城市编号
*
* @example 440800
*/
code: string;
/**
* 名称
*
* @example 湛江市
*/
text: string;
};
area: {
/**
* 6位区/县级市编号
*
* @example 440882
*/
code: string;
/**
* 名称
*
* @example 雷州市
*/
text: string;
};
/**
* 身份证类型
*
* @example 1->大陆,2->港澳台
*/
cardType: 1 | 2;
/**
* @example 大陆、中国台湾、中国香港、中国澳门
*/
cardText: string;
/**
* @example 广东省湛江市雷州市
*/
address: string;
/**
* 周岁
*/
age: number;
/**
* 星座
*/
constellation: string;
};
export type IdCardResult =
| {
valid: false;
}
| IdCardSuccessResult;
export type Upgrade15To18Result = {
/**
* @example 0->成功 -1->失败
*/
code: 0 | -1;
msg: string;
/**
* 成功则为18位证件号;失败则为原始15位证件号
*/
card: string;
};
/**
* 校验【18位】身份证是否有效
*
* @param idcard 18位证件号
*/
export function verify(idcard: string): boolean;
/**
* 获取【18位】身份证内信息
*
* @param idcard
*/
export function info(idcard: string): IdCardResult;
/**
* 生成一个随机的【18位】身份证
*/
export function generateIdcard({areaCode, birthday, localPolice, gener}: {areaCode?: string, birthday?: string, localPolice?: string, gener?: Number}): string;
/**
* 获取星座
*
* @param birthday 格式->YYYYMMDD
*/
export function constellation(birthday: string | number): string;
/**
* 获取星座
*
* @param birthday 格式->YYYY[split]MM[split]DD
* @param split 分隔符
*/
export function constellation(birthday: string, split: string): string;
/**
* 根据生日获取周岁
*
* @param birthday 格式->YYYYMMDD
*/
export function getAge(birthday: string | number): number;
/**
* 15位身份证转18位
*
* @param oldIdcard 15位身份证
*/
export function upgrade15To18(oldIdcard: string): any;