/**
 * APN. APN_ Authentication. APN_ Authentication_ Code
 * urn:x-oca:ocpp:uid:1:568828
 * Authentication method.
 *
 */
export declare type APNAuthenticationEnumType = 'CHAP' | 'NONE' | 'PAP' | 'AUTO';
/**
 * Communication_ Function. OCPP_ Version. OCPP_ Version_ Code
 * urn:x-oca:ocpp:uid:1:569355
 * Defines the OCPP version used for this communication function.
 *
 */
export declare type OCPPVersionEnumType = 'OCPP12' | 'OCPP15' | 'OCPP16' | 'OCPP20';
/**
 * Communication_ Function. OCPP_ Transport. OCPP_ Transport_ Code
 * urn:x-oca:ocpp:uid:1:569356
 * Defines the transport protocol (e.g. SOAP or JSON). Note: SOAP is not supported in OCPP 2.0, but is supported by other versions of OCPP.
 *
 */
export declare type OCPPTransportEnumType = 'JSON' | 'SOAP';
/**
 * Applicable Network Interface.
 *
 */
export declare type OCPPInterfaceEnumType = 'Wired0' | 'Wired1' | 'Wired2' | 'Wired3' | 'Wireless0' | 'Wireless1' | 'Wireless2' | 'Wireless3';
/**
 * VPN. Type. VPN_ Code
 * urn:x-oca:ocpp:uid:1:569277
 * Type of VPN
 *
 */
export declare type VPNEnumType = 'IKEv2' | 'IPSec' | 'L2TP' | 'PPTP';
export default interface SetNetworkProfileRequest {
    customData?: CustomDataType;
    /**
     * Slot in which the configuration should be stored.
     *
     */
    configurationSlot: number;
    connectionData: NetworkConnectionProfileType;
}
/**
 * This class does not get 'AdditionalProperties = false' in the schema generation, so it can be extended with arbitrary JSON properties to allow adding custom data.
 */
export interface CustomDataType {
    vendorId: string;
    [k: string]: unknown;
}
/**
 * Communication_ Function
 * urn:x-oca:ocpp:uid:2:233304
 * The NetworkConnectionProfile defines the functional and technical parameters of a communication link.
 *
 */
export interface NetworkConnectionProfileType {
    customData?: CustomDataType;
    apn?: APNType;
    ocppVersion: OCPPVersionEnumType;
    ocppTransport: OCPPTransportEnumType;
    /**
     * Communication_ Function. OCPP_ Central_ System_ URL. URI
     * urn:x-oca:ocpp:uid:1:569357
     * URL of the CSMS(s) that this Charging Station  communicates with.
     *
     */
    ocppCsmsUrl: string;
    /**
     * Duration in seconds before a message send by the Charging Station via this network connection times-out.
     * The best setting depends on the underlying network and response times of the CSMS.
     * If you are looking for a some guideline: use 30 seconds as a starting point.
     *
     */
    messageTimeout: number;
    /**
     * This field specifies the security profile used when connecting to the CSMS with this NetworkConnectionProfile.
     *
     */
    securityProfile: number;
    ocppInterface: OCPPInterfaceEnumType;
    vpn?: VPNType;
}
/**
 * APN
 * urn:x-oca:ocpp:uid:2:233134
 * Collection of configuration data needed to make a data-connection over a cellular network.
 *
 * NOTE: When asking a GSM modem to dial in, it is possible to specify which mobile operator should be used. This can be done with the mobile country code (MCC) in combination with a mobile network code (MNC). Example: If your preferred network is Vodafone Netherlands, the MCC=204 and the MNC=04 which means the key PreferredNetwork = 20404 Some modems allows to specify a preferred network, which means, if this network is not available, a different network is used. If you specify UseOnlyPreferredNetwork and this network is not available, the modem will not dial in.
 *
 */
export interface APNType {
    customData?: CustomDataType;
    /**
     * APN. APN. URI
     * urn:x-oca:ocpp:uid:1:568814
     * The Access Point Name as an URL.
     *
     */
    apn: string;
    /**
     * APN. APN. User_ Name
     * urn:x-oca:ocpp:uid:1:568818
     * APN username.
     *
     */
    apnUserName?: string;
    /**
     * APN. APN. Password
     * urn:x-oca:ocpp:uid:1:568819
     * APN Password.
     *
     */
    apnPassword?: string;
    /**
     * APN. SIMPIN. PIN_ Code
     * urn:x-oca:ocpp:uid:1:568821
     * SIM card pin code.
     *
     */
    simPin?: number;
    /**
     * APN. Preferred_ Network. Mobile_ Network_ ID
     * urn:x-oca:ocpp:uid:1:568822
     * Preferred network, written as MCC and MNC concatenated. See note.
     *
     */
    preferredNetwork?: string;
    /**
     * APN. Use_ Only_ Preferred_ Network. Indicator
     * urn:x-oca:ocpp:uid:1:568824
     * Default: false. Use only the preferred Network, do
     * not dial in when not available. See Note.
     *
     */
    useOnlyPreferredNetwork?: boolean;
    apnAuthentication: APNAuthenticationEnumType;
}
/**
 * VPN
 * urn:x-oca:ocpp:uid:2:233268
 * VPN Configuration settings
 *
 */
export interface VPNType {
    customData?: CustomDataType;
    /**
     * VPN. Server. URI
     * urn:x-oca:ocpp:uid:1:569272
     * VPN Server Address
     *
     */
    server: string;
    /**
     * VPN. User. User_ Name
     * urn:x-oca:ocpp:uid:1:569273
     * VPN User
     *
     */
    user: string;
    /**
     * VPN. Group. Group_ Name
     * urn:x-oca:ocpp:uid:1:569274
     * VPN group.
     *
     */
    group?: string;
    /**
     * VPN. Password. Password
     * urn:x-oca:ocpp:uid:1:569275
     * VPN Password.
     *
     */
    password: string;
    /**
     * VPN. Key. VPN_ Key
     * urn:x-oca:ocpp:uid:1:569276
     * VPN shared secret.
     *
     */
    key: string;
    type: VPNEnumType;
}
