/
GcsServiceAccountInput.ts
51 lines (44 loc) · 1.27 KB
/
GcsServiceAccountInput.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
import {map, mapArray} from '../common/Mapper';
import GoogleCloudRegion from './GoogleCloudRegion';
import Input from './Input';
import InputType from './InputType';
/**
* @export
* @class GcsServiceAccountInput
*/
export class GcsServiceAccountInput extends Input {
/**
* Discriminator property for Input
* @type {string}
* @memberof GcsServiceAccountInput
*/
public readonly type: InputType = InputType.GCS_SERVICE_ACCOUNT;
/**
* GCS projectId (required)
* @type {string}
* @memberof GcsServiceAccountInput
*/
public serviceAccountCredentials?: string;
/**
* Name of the bucket (required)
* @type {string}
* @memberof GcsServiceAccountInput
*/
public bucketName?: string;
/**
* The cloud region in which the bucket is located. Is used to determine the ideal location for your encodings automatically.
* @type {GoogleCloudRegion}
* @memberof GcsServiceAccountInput
*/
public cloudRegion?: GoogleCloudRegion;
constructor(obj?: Partial<GcsServiceAccountInput>) {
super(obj);
if(!obj) {
return;
}
this.serviceAccountCredentials = map(obj.serviceAccountCredentials);
this.bucketName = map(obj.bucketName);
this.cloudRegion = map(obj.cloudRegion);
}
}
export default GcsServiceAccountInput;