1 | declare module 'amazon-cognito-identity-js' {
|
2 |
|
3 |
|
4 | export type NodeCallback<E, T> = (err?: E, result?: T) => void;
|
5 |
|
6 | export interface CodeDeliveryDetails {
|
7 | AttributeName: string;
|
8 | DeliveryMedium: string;
|
9 | Destination: string;
|
10 | }
|
11 |
|
12 | export type ClientMetadata = { [key: string]: string } | undefined;
|
13 |
|
14 | export interface IAuthenticationCallback {
|
15 | onSuccess: (
|
16 | session: CognitoUserSession,
|
17 | userConfirmationNecessary?: boolean
|
18 | ) => void;
|
19 | onFailure: (err: any) => void;
|
20 | newPasswordRequired?: (
|
21 | userAttributes: any,
|
22 | requiredAttributes: any
|
23 | ) => void;
|
24 | mfaRequired?: (challengeName: any, challengeParameters: any) => void;
|
25 | totpRequired?: (challengeName: any, challengeParameters: any) => void;
|
26 | customChallenge?: (challengeParameters: any) => void;
|
27 | mfaSetup?: (challengeName: any, challengeParameters: any) => void;
|
28 | selectMFAType?: (challengeName: any, challengeParameters: any) => void;
|
29 | }
|
30 |
|
31 | export interface IMfaSettings {
|
32 | PreferredMfa: boolean;
|
33 | Enabled: boolean;
|
34 | }
|
35 | export interface IAuthenticationDetailsData {
|
36 | Username: string;
|
37 | Password?: string;
|
38 | ValidationData?: { [key: string]: any };
|
39 | ClientMetadata?: ClientMetadata;
|
40 | }
|
41 |
|
42 | export class AuthenticationDetails {
|
43 | constructor(data: IAuthenticationDetailsData);
|
44 |
|
45 | public getUsername(): string;
|
46 | public getPassword(): string;
|
47 | public getValidationData(): any[];
|
48 | }
|
49 |
|
50 | export interface ICognitoStorage {
|
51 | setItem(key: string, value: string): void;
|
52 | getItem(key: string): string;
|
53 | removeItem(key: string): void;
|
54 | clear(): void;
|
55 | }
|
56 |
|
57 | export interface ICognitoUserData {
|
58 | Username: string;
|
59 | Pool: CognitoUserPool;
|
60 | Storage?: ICognitoStorage;
|
61 | }
|
62 |
|
63 | export class CognitoUser {
|
64 | constructor(data: ICognitoUserData);
|
65 |
|
66 | public setSignInUserSession(
|
67 | signInUserSession: CognitoUserSession
|
68 | ): void;
|
69 | public getSignInUserSession(): CognitoUserSession | null;
|
70 | public getUsername(): string;
|
71 |
|
72 | public getAuthenticationFlowType(): string;
|
73 | public setAuthenticationFlowType(
|
74 | authenticationFlowType: string
|
75 | ): string;
|
76 |
|
77 | public getSession(callback: Function): any;
|
78 | public refreshSession(
|
79 | refreshToken: CognitoRefreshToken,
|
80 | callback: NodeCallback<any, any>
|
81 | ): void;
|
82 | public authenticateUser(
|
83 | authenticationDetails: AuthenticationDetails,
|
84 | callbacks: IAuthenticationCallback
|
85 | ): void;
|
86 | public initiateAuth(
|
87 | authenticationDetails: AuthenticationDetails,
|
88 | callbacks: IAuthenticationCallback
|
89 | ): void;
|
90 | public confirmRegistration(
|
91 | code: string,
|
92 | forceAliasCreation: boolean,
|
93 | callback: NodeCallback<any, any>,
|
94 | clientMetadata?: ClientMetadata
|
95 | ): void;
|
96 | public sendCustomChallengeAnswer(
|
97 | answerChallenge: any,
|
98 | callback: IAuthenticationCallback
|
99 | ): void;
|
100 | public resendConfirmationCode(
|
101 | callback: NodeCallback<Error, 'SUCCESS'>,
|
102 | clientMetaData?: ClientMetadata
|
103 | ): void;
|
104 | public changePassword(
|
105 | oldPassword: string,
|
106 | newPassword: string,
|
107 | callback: NodeCallback<Error, 'SUCCESS'>
|
108 | ): void;
|
109 | public forgotPassword(
|
110 | callbacks: {
|
111 | onSuccess: (data: any) => void;
|
112 | onFailure: (err: Error) => void;
|
113 | inputVerificationCode?: (data: any) => void;
|
114 | },
|
115 | clientMetaData?: ClientMetadata
|
116 | ): void;
|
117 | public confirmPassword(
|
118 | verificationCode: string,
|
119 | newPassword: string,
|
120 | callbacks: {
|
121 | onSuccess: () => void;
|
122 | onFailure: (err: Error) => void;
|
123 | },
|
124 | clientMetaData?: ClientMetadata
|
125 | ): void;
|
126 | public setDeviceStatusRemembered(callbacks: {
|
127 | onSuccess: (success: string) => void;
|
128 | onFailure: (err: any) => void;
|
129 | }): void;
|
130 | public setDeviceStatusNotRemembered(callbacks: {
|
131 | onSuccess: (success: string) => void;
|
132 | onFailure: (err: any) => void;
|
133 | }): void;
|
134 | public getDevice(callbacks: {
|
135 | onSuccess: (success: string) => void;
|
136 | onFailure: (err: Error) => void;
|
137 | }): any;
|
138 | public forgetDevice(callbacks: {
|
139 | onSuccess: (success: string) => void;
|
140 | onFailure: (err: Error) => void;
|
141 | }): void;
|
142 | public forgetSpecificDevice(
|
143 | deviceKey: string,
|
144 | callbacks: {
|
145 | onSuccess: (success: string) => void;
|
146 | onFailure: (err: Error) => void;
|
147 | }
|
148 | ): void;
|
149 | public sendMFACode(
|
150 | confirmationCode: string,
|
151 | callbacks: {
|
152 | onSuccess: (session: CognitoUserSession) => void;
|
153 | onFailure: (err: any) => void;
|
154 | },
|
155 | mfaType?: string
|
156 | ): void;
|
157 | public listDevices(
|
158 | limit: number,
|
159 | paginationToken: string,
|
160 | callbacks: {
|
161 | onSuccess: (data: any) => void;
|
162 | onFailure: (err: Error) => void;
|
163 | }
|
164 | ): void;
|
165 | public completeNewPasswordChallenge(
|
166 | newPassword: string,
|
167 | requiredAttributeData: any,
|
168 | callbacks: {
|
169 | onSuccess: (session: CognitoUserSession) => void;
|
170 | onFailure: (err: any) => void;
|
171 | mfaRequired?: (
|
172 | challengeName: any,
|
173 | challengeParameters: any
|
174 | ) => void;
|
175 | customChallenge?: (challengeParameters: any) => void;
|
176 | mfaSetup?: (
|
177 | challengeName: any,
|
178 | challengeParameters: any
|
179 | ) => void;
|
180 | },
|
181 | clientMetadata?: ClientMetadata
|
182 | ): void;
|
183 | public signOut(): void;
|
184 | public globalSignOut(callbacks: {
|
185 | onSuccess: (msg: string) => void;
|
186 | onFailure: (err: Error) => void;
|
187 | }): void;
|
188 | public verifyAttribute(
|
189 | attributeName: string,
|
190 | confirmationCode: string,
|
191 | callbacks: {
|
192 | onSuccess: (success: string) => void;
|
193 | onFailure: (err: Error) => void;
|
194 | }
|
195 | ): void;
|
196 | public getUserAttributes(
|
197 | callback: NodeCallback<Error, CognitoUserAttribute[]>
|
198 | ): void;
|
199 | public updateAttributes(
|
200 | attributes: ICognitoUserAttributeData[],
|
201 | callback: NodeCallback<Error, string>
|
202 | ): void;
|
203 | public deleteAttributes(
|
204 | attributeList: string[],
|
205 | callback: NodeCallback<Error, string>
|
206 | ): void;
|
207 | public getAttributeVerificationCode(
|
208 | name: string,
|
209 | callback: {
|
210 | onSuccess: () => void;
|
211 | onFailure: (err: Error) => void;
|
212 | inputVerificationCode?: (data: string) => void | null;
|
213 | }
|
214 | ): void;
|
215 | public deleteUser(callback: NodeCallback<Error, string>): void;
|
216 | public enableMFA(callback: NodeCallback<Error, string>): void;
|
217 | public disableMFA(callback: NodeCallback<Error, string>): void;
|
218 | public getMFAOptions(callback: NodeCallback<Error, MFAOption[]>): void;
|
219 | public getUserData(callback: NodeCallback<Error, UserData>): void;
|
220 | public associateSoftwareToken(callbacks: {
|
221 | associateSecretCode: (secretCode: string) => void;
|
222 | onFailure: (err: any) => void;
|
223 | }): void;
|
224 | public verifySoftwareToken(
|
225 | totpCode: string,
|
226 | friendlyDeviceName: string,
|
227 | callbacks: {
|
228 | onSuccess: (session: CognitoUserSession) => void;
|
229 | onFailure: (err: Error) => void;
|
230 | }
|
231 | ): void;
|
232 | public setUserMfaPreference(
|
233 | smsMfaSettings: IMfaSettings | null,
|
234 | softwareTokenMfaSettings: IMfaSettings | null,
|
235 | callback: NodeCallback<Error, string>
|
236 | ): void;
|
237 | public sendMFASelectionAnswer(
|
238 | answerChallenge: string,
|
239 | callbacks: {
|
240 | onSuccess: (session: CognitoUserSession) => void;
|
241 | onFailure: (err: any) => void;
|
242 | mfaRequired?: (
|
243 | challengeName: any,
|
244 | challengeParameters: any
|
245 | ) => void;
|
246 | totpRequired?: (
|
247 | challengeName: any,
|
248 | challengeParameters: any
|
249 | ) => void;
|
250 | }
|
251 | ): void;
|
252 | }
|
253 |
|
254 | export interface MFAOption {
|
255 | DeliveryMedium: 'SMS' | 'EMAIL';
|
256 | AttributeName: string;
|
257 | }
|
258 |
|
259 | export interface UserData {
|
260 | MFAOptions: MFAOption[];
|
261 | PreferredMfaSetting: string;
|
262 | UserAttributes: ICognitoUserAttributeData[];
|
263 | UserMFASettingList: string[];
|
264 | Username: string;
|
265 | }
|
266 |
|
267 | export interface ICognitoUserAttributeData {
|
268 | Name: string;
|
269 | Value: string;
|
270 | }
|
271 |
|
272 | export class CognitoUserAttribute {
|
273 | constructor(data: ICognitoUserAttributeData);
|
274 |
|
275 | public getValue(): string;
|
276 | public setValue(value: string): CognitoUserAttribute;
|
277 | public getName(): string;
|
278 | public setName(name: string): CognitoUserAttribute;
|
279 | public toString(): string;
|
280 | public toJSON(): Object;
|
281 | }
|
282 |
|
283 | export interface ISignUpResult {
|
284 | user: CognitoUser;
|
285 | userConfirmed: boolean;
|
286 | userSub: string;
|
287 | codeDeliveryDetails: CodeDeliveryDetails;
|
288 | }
|
289 |
|
290 | export interface ICognitoUserPoolData {
|
291 | UserPoolId: string;
|
292 | ClientId: string;
|
293 | endpoint?: string;
|
294 | Storage?: ICognitoStorage;
|
295 | }
|
296 |
|
297 | export class CognitoUserPool {
|
298 | constructor(data: ICognitoUserPoolData);
|
299 |
|
300 | public getUserPoolId(): string;
|
301 | public getClientId(): string;
|
302 |
|
303 | public signUp(
|
304 | username: string,
|
305 | password: string,
|
306 | userAttributes: CognitoUserAttribute[],
|
307 | validationData: CognitoUserAttribute[],
|
308 | callback: NodeCallback<Error, ISignUpResult>
|
309 | ): void;
|
310 |
|
311 | public getCurrentUser(): CognitoUser | null;
|
312 | }
|
313 |
|
314 | export interface ICognitoUserSessionData {
|
315 | IdToken: CognitoIdToken;
|
316 | AccessToken: CognitoAccessToken;
|
317 | RefreshToken?: CognitoRefreshToken;
|
318 | }
|
319 |
|
320 | export class CognitoUserSession {
|
321 | constructor(data: ICognitoUserSessionData);
|
322 |
|
323 | public getIdToken(): CognitoIdToken;
|
324 | public getRefreshToken(): CognitoRefreshToken;
|
325 | public getAccessToken(): CognitoAccessToken;
|
326 | public isValid(): boolean;
|
327 | }
|
328 | /*
|
329 | export class CognitoIdentityServiceProvider {
|
330 | public config: AWS.CognitoIdentityServiceProvider.Types.ClientConfiguration;
|
331 | }
|
332 | */
|
333 | export class CognitoAccessToken {
|
334 | payload: { [key: string]: any };
|
335 |
|
336 | constructor({ AccessToken }: { AccessToken: string });
|
337 |
|
338 | public getJwtToken(): string;
|
339 | public getExpiration(): number;
|
340 | public getIssuedAt(): number;
|
341 | public decodePayload(): { [id: string]: any };
|
342 | }
|
343 |
|
344 | export class CognitoIdToken {
|
345 | payload: { [key: string]: any };
|
346 |
|
347 | constructor({ IdToken }: { IdToken: string });
|
348 |
|
349 | public getJwtToken(): string;
|
350 | public getExpiration(): number;
|
351 | public getIssuedAt(): number;
|
352 | public decodePayload(): { [id: string]: any };
|
353 | }
|
354 |
|
355 | export class CognitoRefreshToken {
|
356 | constructor({ RefreshToken }: { RefreshToken: string });
|
357 |
|
358 | public getToken(): string;
|
359 | }
|
360 |
|
361 | export interface ICookieStorageData {
|
362 | domain: string;
|
363 | path?: string;
|
364 | expires?: number;
|
365 | secure?: boolean;
|
366 | }
|
367 | export class CookieStorage implements ICognitoStorage {
|
368 | constructor(data: ICookieStorageData);
|
369 | setItem(key: string, value: string): void;
|
370 | getItem(key: string): string;
|
371 | removeItem(key: string): void;
|
372 | clear(): void;
|
373 | }
|
374 | }
|