-
Notifications
You must be signed in to change notification settings - Fork 4
/
interfaces.d.ts
144 lines (119 loc) · 2.69 KB
/
interfaces.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
import { Browser } from 'puppeteer'
declare global {
namespace NodeJS {
interface Global {
puppBrowser: Promise<Browser>
}
}
}
declare interface UpdatedGlobal extends NodeJS.Global {
reservedTestUsers: number[]
}
export interface User {
login: string
password: string
}
export interface UserHashed extends User {
hashed?: HashedPassword
}
export interface HashedPassword {
password: string
passwordSalt: string
}
export interface ReserveUser {
(position: number): User
}
export interface FunctionWithBooleanParameter {
(loggedInUser: boolean): void
}
export interface ChromeHTMLElement extends Element {
scrollIntoViewIfNeeded(): void
click(): void
}
export interface NodeListOf<Node> {
length: number
item(index: number): Node
forEach(callbackfn: (value: Node, key: number, parent: NodeListOf<Node>) => void, thisArg?: any): void
[index: number]: Node
}
interface DYN_ADMIN {
PROD_SCHEME_URL: string
username: string
password: string
}
interface SOAP {
baseURL: string
addProduct: string
addOrganization: string
username: string
password: string
}
interface EmailData {
title: string
}
interface OrderEmailData extends EmailData {
orderIdTitle: string
}
interface Email {
orderConfirmation: OrderEmailData
passwordRecovery: EmailData
}
export interface StartProperties {
MAIN_PAGE: string
defaultLoginValue: string
defaultPasswordValue: string
DYN_ADMIN: DYN_ADMIN
SOAP: SOAP
EMAIL: Email
TEST_USERS: UserHashed[]
}
export interface EmailPreviewItem {
i: number
time: string
from?: string
title: string
body?: string
}
export interface DeviceSpecificEmailSelectors {
container: string
specificKeys: any
spinner: string
preview: {
list: string
item: {
container: string
time: Function
from: Function
title: Function
body: Function
textSelector: Function
}
promo?: string
}
}
interface PasswordRecoverySelectors extends EmailData {
recoveryLink: string
}
interface EmailTemplate {
orderConfirmation: OrderEmailData
passwordRecovery: PasswordRecoverySelectors
}
export interface GoogleEmailSelectors {
login: {
email: string
emailNextButton: string
password: string
passwordNextButton: string
next: string
authorized: Function
}
mail: {
mobile: DeviceSpecificEmailSelectors
desktop: DeviceSpecificEmailSelectors
}
template: EmailTemplate
loader?: any
}
export interface AddToBasketInterface {
addToBasket: Function
}