import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface LocationConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#id Location#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Location name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#name Location#name} */ readonly name: string; /** * Notes for this location. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#notes Location#notes} */ readonly notes?: string; /** * A list of ancestor location IDs. This can be used to create sublocations. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#path Location#path} */ readonly path?: string[]; /** * address block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#address Location#address} */ readonly address?: LocationAddress; /** * emergency_number block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#emergency_number Location#emergency_number} */ readonly emergencyNumber?: LocationEmergencyNumber; } export interface LocationAddress { /** * Location city. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#city Location#city} */ readonly city: string; /** * Country abbreviation. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#country Location#country} */ readonly country: string; /** * Location state. Required for countries with states. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#state Location#state} */ readonly state?: string; /** * Street address 1. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#street1 Location#street1} */ readonly street1: string; /** * Street address 2. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#street2 Location#street2} */ readonly street2?: string; /** * Location zip code. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#zip_code Location#zip_code} */ readonly zipCode: string; } export declare function locationAddressToTerraform(struct?: LocationAddressOutputReference | LocationAddress): any; export declare function locationAddressToHclTerraform(struct?: LocationAddressOutputReference | LocationAddress): any; export declare class LocationAddressOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): LocationAddress | undefined; set internalValue(value: LocationAddress | undefined); private _city?; get city(): string; set city(value: string); get cityInput(): string; private _country?; get country(): string; set country(value: string); get countryInput(): string; private _state?; get state(): string; set state(value: string); resetState(): void; get stateInput(): string; private _street1?; get street1(): string; set street1(value: string); get street1Input(): string; private _street2?; get street2(): string; set street2(value: string); resetStreet2(): void; get street2Input(): string; private _zipCode?; get zipCode(): string; set zipCode(value: string); get zipCodeInput(): string; } export interface LocationEmergencyNumber { /** * Emergency phone number. Must be in an E.164 number format. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#number Location#number} */ readonly number: string; /** * Type of emergency number (default | elin). Defaults to `default`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#type Location#type} */ readonly type?: string; } export declare function locationEmergencyNumberToTerraform(struct?: LocationEmergencyNumberOutputReference | LocationEmergencyNumber): any; export declare function locationEmergencyNumberToHclTerraform(struct?: LocationEmergencyNumberOutputReference | LocationEmergencyNumber): any; export declare class LocationEmergencyNumberOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): LocationEmergencyNumber | undefined; set internalValue(value: LocationEmergencyNumber | undefined); private _number?; get number(): string; set number(value: string); get numberInput(): string; private _type?; get type(): string; set type(value: string); resetType(): void; get typeInput(): string; } /** * Represents a {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location genesyscloud_location} */ export declare class Location extends cdktf.TerraformResource { static readonly tfResourceType = "genesyscloud_location"; /** * Generates CDKTF code for importing a Location resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the Location to import * @param importFromId The id of the existing Location that should be imported. Refer to the {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the Location to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/mypurecloud/genesyscloud/1.73.0/docs/resources/location genesyscloud_location} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options LocationConfig */ constructor(scope: Construct, id: string, config: LocationConfig); private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _notes?; get notes(): string; set notes(value: string); resetNotes(): void; get notesInput(): string; private _path?; get path(): string[]; set path(value: string[]); resetPath(): void; get pathInput(): string[]; private _address; get address(): LocationAddressOutputReference; putAddress(value: LocationAddress): void; resetAddress(): void; get addressInput(): LocationAddress; private _emergencyNumber; get emergencyNumber(): LocationEmergencyNumberOutputReference; putEmergencyNumber(value: LocationEmergencyNumber): void; resetEmergencyNumber(): void; get emergencyNumberInput(): LocationEmergencyNumber; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }