import { AxiosRequestConfig } from 'axios';
import { BaseAPI } from './base';
/**
 * Information about an audit event returned when querying audit events.
 * @export
 * @interface AccountAuditEvent
 */
export interface AccountAuditEvent {
    /**
     * The UUID of the account containing this audit event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'accountId'?: string;
    /**
     *
     * @type {AuditDetails}
     * @memberof AccountAuditEvent
     */
    'auditDetails'?: AuditDetails;
    /**
     * For a management event, the action that was performed.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'entityAction'?: string;
    /**
     * For a management event, the UUID of the entity that was acted upon.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'entityId'?: string;
    /**
     * For a management event, the name of the entity that was acted upon.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'entityName'?: string;
    /**
     * For a management event, the entity type that was acted upon.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'entityType'?: string;
    /**
     * The category of the event.  Values are AUTHENTICATION or MANAGEMENT.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'eventCategory'?: AccountAuditEventEventCategoryEnum;
    /**
     * The outcome of the event.  Values are success or fail.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'eventOutcome'?: AccountAuditEventEventOutcomeEnum;
    /**
     * The time of this event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'eventTime': string;
    /**
     * The type of the event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'eventType'?: string;
    /**
     * Version information for future use.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'eventVersion'?: string;
    /**
     * The UUID of this audit event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'id'?: string;
    /**
     * A message key describing the event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'message'?: string;
    /**
     * The permission used for a management event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'requiredPermission'?: string;
    /**
     * The UUID of the resource associated with the event.  For example the UUID of the application to which a user is authenticating.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'resourceId'?: string;
    /**
     * The name of the resource.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'resourceName'?: string;
    /**
     * A UUID of the service provider role used for a management event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'serviceProviderAdminRoleId'?: string;
    /**
     * The name of the service provider role.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'serviceProviderAdminRoleName'?: string;
    /**
     * The IP address of the client performing this event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'sourceIp'?: string;
    /**
     * The UUID of the subject that performed this event.  For administration events the subject will be the administrator or administration API application that performed the event.  For authentication events the subject will be the user that performed the authentication.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'subject'?: string;
    /**
     * The name of the subject that performed this event.  For users the value will be the user\'s user Id. For administration API applications, the value will be the application\'s name.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'subjectName'?: string;
    /**
     * The type of the subject that performed this event.  Values are USER or ADMIN_API.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'subjectType'?: AccountAuditEventSubjectTypeEnum;
    /**
     * The UUID of the subscriber/site management role used for a management event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'subscriberAdminRoleId'?: string;
    /**
     * The name of the subscriber/site management role.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'subscriberAdminRoleName'?: string;
    /**
     * Information about what authenticator was used for an authentication event.
     * @type {string}
     * @memberof AccountAuditEvent
     */
    'token'?: string;
}
export declare const AccountAuditEventEventCategoryEnum: {
    readonly Authentication: "AUTHENTICATION";
    readonly Management: "MANAGEMENT";
    readonly Issuance: "ISSUANCE";
};
export type AccountAuditEventEventCategoryEnum = typeof AccountAuditEventEventCategoryEnum[keyof typeof AccountAuditEventEventCategoryEnum];
export declare const AccountAuditEventEventOutcomeEnum: {
    readonly Success: "SUCCESS";
    readonly Fail: "FAIL";
};
export type AccountAuditEventEventOutcomeEnum = typeof AccountAuditEventEventOutcomeEnum[keyof typeof AccountAuditEventEventOutcomeEnum];
export declare const AccountAuditEventSubjectTypeEnum: {
    readonly User: "USER";
    readonly AdminApi: "ADMIN_API";
    readonly ServiceProvider: "SERVICE_PROVIDER";
    readonly Agent: "AGENT";
};
export type AccountAuditEventSubjectTypeEnum = typeof AccountAuditEventSubjectTypeEnum[keyof typeof AccountAuditEventSubjectTypeEnum];
/**
 * The active entitlements applicable to the subscriber.
 * @export
 * @interface AccountEntitlement
 */
export interface AccountEntitlement {
    /**
     *
     * @type {SmsVoice}
     * @memberof AccountEntitlement
     */
    'smsVoice'?: SmsVoice;
    /**
     *
     * @type {UserEntitlement}
     * @memberof AccountEntitlement
     */
    'users'?: UserEntitlement;
}
/**
 * Account subscriber.
 * @export
 * @interface AccountInfo
 */
export interface AccountInfo {
    /**
     * The ISO-3166-1 code of the country the company is located in.
     * @type {string}
     * @memberof AccountInfo
     */
    'companyCountry'?: string;
    /**
     * The name of the company the account belongs to.
     * @type {string}
     * @memberof AccountInfo
     */
    'companyName': string;
    /**
     * The ISO-3166-2 code for the state/province the company is located in.
     * @type {string}
     * @memberof AccountInfo
     */
    'companyState'?: string;
    /**
     * Whether or not the legal agreement has been acknowledged for the account.
     * @type {boolean}
     * @memberof AccountInfo
     */
    'legalAcknowledged'?: boolean;
}
/**
 * New account information.
 * @export
 * @interface AccountInfoParms
 */
export interface AccountInfoParms {
    /**
     * The name of the company the account belongs to.  The value must be between 1 and 100 characters.
     * @type {string}
     * @memberof AccountInfoParms
     */
    'companyName'?: string;
    /**
     * Whether or not the legal agreement has been acknowledged for the account. This value can only be changed from false to true.
     * @type {boolean}
     * @memberof AccountInfoParms
     */
    'legalAcknowledged'?: boolean;
}
/**
 * The acrs associated with this resource rule if acrFilter is set to SPECIFIC. The resource rule will only apply if a requested acr is one of the specified acrs.
 * @export
 * @interface Acr
 */
export interface Acr {
    /**
     * The unique UUID assigned to the acr when it is created.
     * @type {string}
     * @memberof Acr
     */
    'id': string;
    /**
     * The name of the acr.
     * @type {string}
     * @memberof Acr
     */
    'name'?: string;
    /**
     * A flag indicating if the authentication flow can be modified or deleted.
     * @type {boolean}
     * @memberof Acr
     */
    'readOnly'?: boolean;
    /**
     * List of resource rule names using the acr.
     * @type {Array<string>}
     * @memberof Acr
     */
    'resourceRules'?: Array<string>;
}
/**
 * Parameters defining the new acr.
 * @export
 * @interface AcrParms
 */
export interface AcrParms {
    /**
     * The name of the acr.
     * @type {string}
     * @memberof AcrParms
     */
    'name': string;
}
/**
 * Parameters for the activation completion including the registration code.
 * @export
 * @interface ActivateCompleteParms
 */
export interface ActivateCompleteParms {
    /**
     * The registration code displayed by the Mobile ST application needed to complete activation of the token.
     * @type {string}
     * @memberof ActivateCompleteParms
     */
    'registrationCode'?: string;
}
/**
 * Optional parameters specifying how the token is to be activated. If not specified, all activation types are used, the QR code is returned and the activation email is sent.
 * @export
 * @interface ActivateParms
 */
export interface ActivateParms {
    /**
     * A flag indicating if Identity as a Service should send an activation email including the activation information to the end user. If not specified, this attribute defaults to false.
     * @type {boolean}
     * @memberof ActivateParms
     */
    'deliverActivationEmail'?: boolean;
    /**
     * A flag indicating if the QR code for offline activation is returned.  The link encoded in the QR code is always returned for clients that want to encode their own QR code.  If not specified, this attribute defaults to false.
     * @type {boolean}
     * @memberof ActivateParms
     */
    'returnQRCode'?: boolean;
    /**
     * The Base32-encoded secret of the token. If provided, IDaaS will use this value as the token seed and activate the token. This value is only supported for Google Authenticator. Value must contain at least 10 bytes and must not exceed 64 bytes.
     * @type {string}
     * @memberof ActivateParms
     */
    'secret'?: string;
    /**
     * The list of activation types that will be performed.  Allowed values are: CLASSIC (return activation values that must be manually entered into the mobile application), ONLINE (return a link that when clicked will launch the mobile application) and OFFLINE (return a QR code that can be scanned by the mobile application).  If no values are specified in the list, then all activation types are performed.
     * @type {Array<string>}
     * @memberof ActivateParms
     */
    'type'?: Array<ActivateParmsTypeEnum>;
}
export declare const ActivateParmsTypeEnum: {
    readonly Classic: "CLASSIC";
    readonly Online: "ONLINE";
    readonly Offline: "OFFLINE";
};
export type ActivateParmsTypeEnum = typeof ActivateParmsTypeEnum[keyof typeof ActivateParmsTypeEnum];
/**
 * The result of a token activate operation.
 * @export
 * @interface ActivateResult
 */
export interface ActivateResult {
    /**
     * The activation address for the token.  This value should be entered into the Mobile ST application if you want to perform manual activaiton.
     * @type {string}
     * @memberof ActivateResult
     */
    'activationAddress'?: string;
    /**
     * The activation code for the token.  This value should be entered into the Mobile ST application if you want to perform manual activation
     * @type {string}
     * @memberof ActivateResult
     */
    'activationCode'?: string;
    /**
     * The HTTP activation URL.  Clicking on this URL on your mobile device will redirect you to the Mobile ST application to perform activation.
     * @type {string}
     * @memberof ActivateResult
     */
    'activationOnlineHttpURL'?: string;
    /**
     * The application specific activation URL.  Clicking on this URL on your mobile device will launch the Mobile ST application to perform activation.
     * @type {string}
     * @memberof ActivateResult
     */
    'activationOnlineURL'?: string;
    /**
     * If the Mobile ST prompts you to enter an activation password during activation, this attribute is the password you must enter.
     * @type {string}
     * @memberof ActivateResult
     */
    'activationPassword'?: string;
    /**
     * The base-64 encoded activation QR code.  This QR code can be scanned by the Mobile ST application to perform activation.
     * @type {string}
     * @memberof ActivateResult
     */
    'activationQRCode'?: string;
    /**
     * The URL encoded in the activation QR code.
     * @type {string}
     * @memberof ActivateResult
     */
    'activationURL'?: string;
    /**
     * The serial number of the token.
     * @type {string}
     * @memberof ActivateResult
     */
    'serialNumber'?: string;
}
/**
 * Parameters for the smart credential activation.
 * @export
 * @interface ActivateSmartCredentialParms
 */
export interface ActivateSmartCredentialParms {
    /**
     * A map which consists of additional attributes and values to be used for smart credential encoding. Currently the only value that is supported is the value with name \"photo\" where the value is a Base-64 encoded JPEG or PNG image or a data URL of the form \"data:image/<type>;base64,&lt;data&gt;\" where <type> is jpeg or png and &lt;data&gt; is a Base-64 encoded JPEG or PNG image.
     * @type {{ [key: string]: string; }}
     * @memberof ActivateSmartCredentialParms
     */
    'additionalUserInfo'?: {
        [key: string]: string;
    };
    /**
     * A flag indicating if the activation email should be delivered to the user.  If not set, it defaults to false.
     * @type {boolean}
     * @memberof ActivateSmartCredentialParms
     */
    'deliverActivationEmail'?: boolean;
    /**
     * A flag indicating if the target is mobile smart credential.
     * @type {boolean}
     * @memberof ActivateSmartCredentialParms
     */
    'mobile'?: boolean;
    /**
     * A list of which activation types (LINK or QRCODE) should use a random password to encrypt the activation information. If the list is null or empty, QRCODE activation will require a password and LINK will not.
     * @type {Array<string>}
     * @memberof ActivateSmartCredentialParms
     */
    'requirePassword'?: Array<ActivateSmartCredentialParmsRequirePasswordEnum>;
    /**
     * A list of activation types (LINK or QRCODE) to perform.  If the list is null or empty, all activation types are performed
     * @type {Array<string>}
     * @memberof ActivateSmartCredentialParms
     */
    'type'?: Array<ActivateSmartCredentialParmsTypeEnum>;
}
export declare const ActivateSmartCredentialParmsRequirePasswordEnum: {
    readonly Link: "LINK";
    readonly Qrcode: "QRCODE";
};
export type ActivateSmartCredentialParmsRequirePasswordEnum = typeof ActivateSmartCredentialParmsRequirePasswordEnum[keyof typeof ActivateSmartCredentialParmsRequirePasswordEnum];
export declare const ActivateSmartCredentialParmsTypeEnum: {
    readonly Link: "LINK";
    readonly Qrcode: "QRCODE";
};
export type ActivateSmartCredentialParmsTypeEnum = typeof ActivateSmartCredentialParmsTypeEnum[keyof typeof ActivateSmartCredentialParmsTypeEnum];
/**
 * Information returned from the activate smart credential operation.
 * @export
 * @interface ActivateSmartCredentialResult
 */
export interface ActivateSmartCredentialResult {
    /**
     * If either the QR Code URL or the Link URL were password protected, the password needed to unprotect them.
     * @type {string}
     * @memberof ActivateSmartCredentialResult
     */
    'activationPassword'?: string;
    /**
     * The HTTP version of the link activation URL
     * @type {string}
     * @memberof ActivateSmartCredentialResult
     */
    'linkHttpURL'?: string;
    /**
     * The link activation URL
     * @type {string}
     * @memberof ActivateSmartCredentialResult
     */
    'linkURL'?: string;
    /**
     * Base-64 encoded activation QR Code
     * @type {string}
     * @memberof ActivateSmartCredentialResult
     */
    'qrCode'?: string;
    /**
     * The activation URL encoded into the QR Code
     * @type {string}
     * @memberof ActivateSmartCredentialResult
     */
    'qrCodeURL'?: string;
}
/**
 * Additional feature
 * @export
 * @interface AdditionalFeature
 */
export interface AdditionalFeature {
    /**
     * Enhanced geo location additional feature.
     * @type {boolean}
     * @memberof AdditionalFeature
     */
    'enhancedGeoLocation'?: boolean;
}
/**
 * Information returned when an Admin API application is fetched from Identity as a Service.
 * @export
 * @interface AdminApiApplication
 */
export interface AdminApiApplication {
    /**
     * Determines if the application can use a long-lived token for authentication.
     * @type {boolean}
     * @memberof AdminApiApplication
     */
    'allowLongLivedToken'?: boolean;
    /**
     * The name of the application template specific to this application type.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'applicationTemplate': string;
    /**
     * Application template id specific to this application type.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'applicationTemplateId'?: string;
    /**
     * Short description of application.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'description'?: string;
    /**
     * Application ID.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'id'?: string;
    /**
     * The UUID of the IP Addresses list.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'ipListId'?: string;
    /**
     * Last successful authentication time to use administration api
     * @type {string}
     * @memberof AdminApiApplication
     */
    'lastAuthnDate'?: string;
    /**
     * Base64 encoded logo image.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'logo'?: string;
    /**
     * Name of application.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'name': string;
    /**
     * The UUID of the Site role to be associated with the API application. Pass an empty string value to unset the site role.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'roleId'?: string;
    /**
     * Shared secret for application.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'sharedSecret'?: string;
    /**
     * The UUID of the service provider role to be associated with the API application. Pass an empty string to unset the service provider role.
     * @type {string}
     * @memberof AdminApiApplication
     */
    'spRoleId'?: string;
}
/**
 * Parameters for the new application.
 * @export
 * @interface AdminApiApplicationParms
 */
export interface AdminApiApplicationParms {
    /**
     * Determines if a long-lived token is allowed in this application.
     * @type {boolean}
     * @memberof AdminApiApplicationParms
     */
    'allowLongLivedToken'?: boolean;
    /**
     * The UUID of the application template.  This value is only used when creating a new application. If not specified, the default admininstration API template is used.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'applicationTemplateId'?: string;
    /**
     * Short description of application.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'description'?: string;
    /**
     * The UUID of the IP Addresses list.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'ipListId'?: string;
    /**
     * Base64 encoded logo image.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'logo'?: string;
    /**
     * Name of application.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'name': string;
    /**
     * The UUID of the Site role to be associated with the API application. Pass an empty string value to unset the site role. Either this value or spRoleId is required when creating the application.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'roleId'?: string;
    /**
     * The UUID of the service provider role to be associated with the API application. Pass an empty string to unset the service provider role. Either this value or roleId is required when creating the application.
     * @type {string}
     * @memberof AdminApiApplicationParms
     */
    'spRoleId'?: string;
}
/**
 * Parameters passed to authenticate to an Admin API application.
 * @export
 * @interface AdminApiAuthentication
 */
export interface AdminApiAuthentication {
    /**
     * Administration API application id
     * @type {string}
     * @memberof AdminApiAuthentication
     */
    'applicationId': string;
    /**
     * If set to true, a session cookie named INTELLITRUST_SESSION_ID is returned with the authentication response. This cookie must be returned with all subsequent requests.
     * @type {boolean}
     * @memberof AdminApiAuthentication
     */
    'enableWebSession'?: boolean;
    /**
     * Shared Secret
     * @type {string}
     * @memberof AdminApiAuthentication
     */
    'sharedSecret': string;
}
/**
 *
 * @export
 * @interface AdminApiAuthenticationResult
 */
export interface AdminApiAuthenticationResult {
    /**
     * Authorization token returned after a successful authentication.
     * @type {string}
     * @memberof AdminApiAuthenticationResult
     */
    'authToken'?: string;
    /**
     * Creation time of the authentication token.
     * @type {string}
     * @memberof AdminApiAuthenticationResult
     */
    'creationTime'?: string;
    /**
     * Expiry time of the authentication token.
     * @type {string}
     * @memberof AdminApiAuthenticationResult
     */
    'expirationTime'?: string;
}
/**
 *
 * @export
 * @interface ApplicationInfo
 */
export interface ApplicationInfo {
    /**
     * The template the application was created from.
     * @type {string}
     * @memberof ApplicationInfo
     */
    'applicationTemplate'?: string;
    /**
     * The UUID of the template the application was created from.
     * @type {string}
     * @memberof ApplicationInfo
     */
    'applicationTemplateId'?: string;
    /**
     * The application authentication method.
     * @type {string}
     * @memberof ApplicationInfo
     */
    'authenticationMethod'?: string;
    /**
     * The UUID of the application.
     * @type {string}
     * @memberof ApplicationInfo
     */
    'id'?: string;
    /**
     * The name of the application.
     * @type {string}
     * @memberof ApplicationInfo
     */
    'name'?: string;
}
/**
 * An ApplicationResourceRule defines the resource rules used by an application.
 * @export
 * @interface ApplicationResourceRule
 */
export interface ApplicationResourceRule {
    /**
     * The UUID of the application.
     * @type {string}
     * @memberof ApplicationResourceRule
     */
    'id'?: string;
    /**
     * The name of the application.
     * @type {string}
     * @memberof ApplicationResourceRule
     */
    'name'?: string;
    /**
     * List of resource rules associated to this application.
     * @type {Array<ResourceRuleNameId>}
     * @memberof ApplicationResourceRule
     */
    'resourceRules': Array<ResourceRuleNameId>;
}
/**
 * Information returned about an Identity as a Service application template.
 * @export
 * @interface ApplicationTemplate
 */
export interface ApplicationTemplate {
    /**
     * The type the application template. Possible values are SAML20, RADIUS, AAAS, IDG, OIDC, AUTHAPI, ADMINAPI, SIEMAPI.
     * @type {string}
     * @memberof ApplicationTemplate
     */
    'authenticationMethod': string;
    /**
     * The description of application template.
     * @type {string}
     * @memberof ApplicationTemplate
     */
    'description'?: string;
    /**
     * The UUID of the application template.
     * @type {string}
     * @memberof ApplicationTemplate
     */
    'id': string;
    /**
     * The name of the application template.
     * @type {string}
     * @memberof ApplicationTemplate
     */
    'name': string;
}
/**
 * Token assignment parameters including the user id or user alias of the user to which the token is to be assigned.
 * @export
 * @interface AssignParms
 */
export interface AssignParms {
    /**
     * When the assign operation is not being performed by an administrator, a token response from the token being assigned must be provided.
     * @type {string}
     * @memberof AssignParms
     */
    'response'?: string;
    /**
     * When assigning a token to a known user, this argument specifies the serial number of the token being assigned.
     * @type {string}
     * @memberof AssignParms
     */
    'serialNumber'?: string;
    /**
     * When assigning a token to a user this attribute optionally specifies the type of token to be assigned. It can be a value of OATH_PHYSICAL_TOKEN or ENTRUST_LEGACY_TOKEN. This attribute is only required if the serial number is not unique.
     * @type {string}
     * @memberof AssignParms
     */
    'tokenType'?: string;
    /**
     * When assigning a known token to a user, this argument specifies the user Id or user alias of the user to which the token will be assigned.
     * @type {string}
     * @memberof AssignParms
     */
    'userId'?: string;
}
/**
 * Arguments specifying the changes to the token.
 * @export
 * @interface AssignedTokenParms
 */
export interface AssignedTokenParms {
    /**
     * Optional label to identify an assigned token: a String up to 100 characters.
     * @type {string}
     * @memberof AssignedTokenParms
     */
    'label'?: string;
}
/**
 * Additional audit details that may be included with an audit event.
 * @export
 * @interface AuditDetails
 */
export interface AuditDetails {
    /**
     * A  list of attributes when an entity is added or removed.
     * @type {Array<EntityAttribute>}
     * @memberof AuditDetails
     */
    'entityAttributes'?: Array<EntityAttribute>;
    /**
     * List of tokens referencing event attributes that can be used in the audit message.
     * @type {Array<string>}
     * @memberof AuditDetails
     */
    'messageTokens'?: Array<string>;
    /**
     * A  list of attributes when an entity is modified.
     * @type {Array<ModifiedEntityAttribute>}
     * @memberof AuditDetails
     */
    'modifiedEntityAttributes'?: Array<ModifiedEntityAttribute>;
}
/**
 * Contains paging information and audit events.
 * @export
 * @interface AuditEventPage
 */
export interface AuditEventPage {
    /**
     *
     * @type {Paging}
     * @memberof AuditEventPage
     */
    'paging'?: Paging;
    /**
     * A single page from the list of audit events found.
     * @type {Array<AccountAuditEvent>}
     * @memberof AuditEventPage
     */
    'results': Array<AccountAuditEvent>;
}
/**
 * Information returned when an Auth. API application is fetched from Identity as a Service.
 * @export
 * @interface AuthApiApplication
 */
export interface AuthApiApplication {
    /**
     * Defines whether ignore ip address for rba will be allowed or not.
     * @type {boolean}
     * @memberof AuthApiApplication
     */
    'allowIgnoreIpAddressForRba'?: boolean;
    /**
     * Application template specific to this application type.
     * @type {string}
     * @memberof AuthApiApplication
     */
    'applicationTemplate': string;
    /**
     * Application template id specific to this application type.
     * @type {string}
     * @memberof AuthApiApplication
     */
    'applicationTemplateId'?: string;
    /**
     * Indicates the source of client IP address for risk analysis
     * @type {string}
     * @memberof AuthApiApplication
     */
    'clientIpSource'?: AuthApiApplicationClientIpSourceEnum;
    /**
     * Short description of application.
     * @type {string}
     * @memberof AuthApiApplication
     */
    'description'?: string;
    /**
     * Application id.
     * @type {string}
     * @memberof AuthApiApplication
     */
    'id'?: string;
    /**
     * Base64 encoded logo image.
     * @type {string}
     * @memberof AuthApiApplication
     */
    'logo'?: string;
    /**
     * Name of application.
     * @type {string}
     * @memberof AuthApiApplication
     */
    'name': string;
    /**
     * Flag indicating if passkey authentication is allowed for this application. This flag has been deprecated and is no longer used.
     * @type {boolean}
     * @memberof AuthApiApplication
     * @deprecated
     */
    'passkeyEnabled'?: boolean;
    /**
     *
     * @type {ProtectedOfflineSettings}
     * @memberof AuthApiApplication
     */
    'protectedOfflineSettings'?: ProtectedOfflineSettings;
    /**
     * Defines whether user values function is enabled.
     * @type {boolean}
     * @memberof AuthApiApplication
     */
    'userValuesEnabled'?: boolean;
    /**
     * Defines whether verification for a user must be satisfied.
     * @type {boolean}
     * @memberof AuthApiApplication
     */
    'verificationRequired'?: boolean;
}
export declare const AuthApiApplicationClientIpSourceEnum: {
    readonly NotIncluded: "NOT_INCLUDED";
    readonly Provided: "PROVIDED";
    readonly FromConnection: "FROM_CONNECTION";
};
export type AuthApiApplicationClientIpSourceEnum = typeof AuthApiApplicationClientIpSourceEnum[keyof typeof AuthApiApplicationClientIpSourceEnum];
/**
 * Parameters for the new application.
 * @export
 * @interface AuthApiApplicationParms
 */
export interface AuthApiApplicationParms {
    /**
     * Flag indicates if ignore ip address for rba will be allowed or not.
     * @type {boolean}
     * @memberof AuthApiApplicationParms
     */
    'allowIgnoreIpAddressForRba'?: boolean;
    /**
     * Application template specific to this application type.
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'applicationTemplate': string;
    /**
     * Application template id specific to this application type.
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'applicationTemplateId'?: string;
    /**
     * Indicates the source of client IP address for risk analysis
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'clientIpSource'?: AuthApiApplicationParmsClientIpSourceEnum;
    /**
     * Short description of application.
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'description'?: string;
    /**
     * Unique UUID for the application used when creating a new application. If not specified, IDaaS will generate a random UUID.
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'id'?: string;
    /**
     * Base64 encoded logo image.
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'logo'?: string;
    /**
     * Name of the application.
     * @type {string}
     * @memberof AuthApiApplicationParms
     */
    'name': string;
    /**
     * Flag indicating if passkey authentication is allowed for this application.
     * @type {boolean}
     * @memberof AuthApiApplicationParms
     */
    'passkeyEnabled'?: boolean;
    /**
     *
     * @type {ProtectedOfflineSettings}
     * @memberof AuthApiApplicationParms
     */
    'protectedOfflineSettings'?: ProtectedOfflineSettings;
    /**
     * Flag indicating if user client values is allowed for this application.
     * @type {boolean}
     * @memberof AuthApiApplicationParms
     */
    'userValuesEnabled'?: boolean;
    /**
     * Defines whether verification for a user must be satisfied.
     * @type {boolean}
     * @memberof AuthApiApplicationParms
     */
    'verificationRequired'?: boolean;
}
export declare const AuthApiApplicationParmsClientIpSourceEnum: {
    readonly NotIncluded: "NOT_INCLUDED";
    readonly Provided: "PROVIDED";
    readonly FromConnection: "FROM_CONNECTION";
};
export type AuthApiApplicationParmsClientIpSourceEnum = typeof AuthApiApplicationParmsClientIpSourceEnum[keyof typeof AuthApiApplicationParmsClientIpSourceEnum];
/**
 * An AuthenticationFlow defines the authentication options available for a given risk level.
 * @export
 * @interface AuthenticationFlow
 */
export interface AuthenticationFlow {
    /**
     * List of applications using this authentication flow.
     * @type {Array<ApplicationResourceRule>}
     * @memberof AuthenticationFlow
     */
    'applications'?: Array<ApplicationResourceRule>;
    /**
     * The unique UUID assigned to the authentication flow when it is created.
     * @type {string}
     * @memberof AuthenticationFlow
     */
    'id': string;
    /**
     * The identity providers, both OIDC and SAML, supported when the IDP login flow is enabled--limited info is returned. This parameter should be used instead of oidcIdentityProviders.
     * @type {Array<IdentityProvider>}
     * @memberof AuthenticationFlow
     */
    'identityProviders'?: Array<IdentityProvider>;
    /**
     * A flag indicating if the authentication flow will be using domain-based IDPs.
     * @type {boolean}
     * @memberof AuthenticationFlow
     */
    'idpDomainBased'?: boolean;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the identity provider Login flow is enabled and requires a second factor. PASSTHROUGH is not supported.
     * @type {Array<string>}
     * @memberof AuthenticationFlow
     */
    'idpLoginSecondStep'?: Array<AuthenticationFlowIdpLoginSecondStepEnum>;
    /**
     * List of login flows.
     * @type {Array<LoginFlow>}
     * @memberof AuthenticationFlow
     */
    'loginFlows': Array<LoginFlow>;
    /**
     * The name of the authentication flow.
     * @type {string}
     * @memberof AuthenticationFlow
     */
    'name': string;
    /**
     * The OIDC identity providers supported when the IDP login flow is enabled--limited info is returned. This parameter is deprecated, use identityProviders instead.
     * @type {Array<OidcIdentityProvider>}
     * @memberof AuthenticationFlow
     * @deprecated
     */
    'oidcIdentityProviders'?: Array<OidcIdentityProvider>;
    /**
     * The order preference to use for OTP delivery.
     * @type {Array<OTPPreferenceDetails>}
     * @memberof AuthenticationFlow
     */
    'otpDeliveryPreference'?: Array<OTPPreferenceDetails>;
    /**
     * A flag indicating if group based OTP policy can be overridden by the authentication flow OTP policy.
     * @type {boolean}
     * @memberof AuthenticationFlow
     */
    'overrideOtpContacts'?: boolean;
    /**
     * A flag indicating if the authentication flow can be modified or deleted.
     * @type {boolean}
     * @memberof AuthenticationFlow
     */
    'readOnly': boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the  User Login flow is enabled.
     * @type {string}
     * @memberof AuthenticationFlow
     */
    'userLoginFirstStep'?: AuthenticationFlowUserLoginFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the User Login flow is enabled.
     * @type {Array<string>}
     * @memberof AuthenticationFlow
     */
    'userLoginSecondStep'?: Array<AuthenticationFlowUserLoginSecondStepEnum>;
}
export declare const AuthenticationFlowIdpLoginSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type AuthenticationFlowIdpLoginSecondStepEnum = typeof AuthenticationFlowIdpLoginSecondStepEnum[keyof typeof AuthenticationFlowIdpLoginSecondStepEnum];
export declare const AuthenticationFlowUserLoginFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type AuthenticationFlowUserLoginFirstStepEnum = typeof AuthenticationFlowUserLoginFirstStepEnum[keyof typeof AuthenticationFlowUserLoginFirstStepEnum];
export declare const AuthenticationFlowUserLoginSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type AuthenticationFlowUserLoginSecondStepEnum = typeof AuthenticationFlowUserLoginSecondStepEnum[keyof typeof AuthenticationFlowUserLoginSecondStepEnum];
/**
 * Parameters defining the new authentication flow.
 * @export
 * @interface AuthenticationFlowParms
 */
export interface AuthenticationFlowParms {
    /**
     * The UUIDs of the identity providers, both OIDC and SAML, supported when the IDP login flow is enabled--at least one is required. This parameter should be used instead of oidcIdentityProviderIds.
     * @type {Array<string>}
     * @memberof AuthenticationFlowParms
     */
    'identityProviderIds'?: Array<string>;
    /**
     * A flag indicating if the authentication flow will be using domain-based IDPs.
     * @type {boolean}
     * @memberof AuthenticationFlowParms
     */
    'idpDomainBased'?: boolean;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the identity provider Login flow is enabled and requires a second factor. PASSTHROUGH is not supported.
     * @type {Array<string>}
     * @memberof AuthenticationFlowParms
     */
    'idpLoginSecondStep'?: Array<AuthenticationFlowParmsIdpLoginSecondStepEnum>;
    /**
     * List of enabled login flows--at least one must be enabled. If a login flow is not provided, then it\'s treated as disabled. Enabled login flows must be supported by the account entitlement.
     * @type {Array<LoginFlow>}
     * @memberof AuthenticationFlowParms
     */
    'loginFlows': Array<LoginFlow>;
    /**
     * The name of the authentication flow.
     * @type {string}
     * @memberof AuthenticationFlowParms
     */
    'name'?: string;
    /**
     * The UUIDs of the OIDC identity providers supported when the IDP login flow is enabled--at least one is required. This parameter is deprecated, use identityProviderIds instead.
     * @type {Array<string>}
     * @memberof AuthenticationFlowParms
     * @deprecated
     */
    'oidcIdentityProviderIds'?: Array<string>;
    /**
     * Indicates the otp delivery preference in order.
     * @type {Array<OTPPreferenceDetails>}
     * @memberof AuthenticationFlowParms
     */
    'otpDeliveryPreference'?: Array<OTPPreferenceDetails>;
    /**
     * A flag indicating if group based OTP policy can be overridden by the authentication flow.
     * @type {boolean}
     * @memberof AuthenticationFlowParms
     */
    'overrideOtpContacts'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the  User Login flow is enabled.
     * @type {string}
     * @memberof AuthenticationFlowParms
     */
    'userLoginFirstStep'?: AuthenticationFlowParmsUserLoginFirstStepEnum;
    /**
     * The list of authenticator types to use in the second step of a two-step authentication scenario when the User Login flow is enabled. Use an empty array when none is required.
     * @type {Array<string>}
     * @memberof AuthenticationFlowParms
     */
    'userLoginSecondStep'?: Array<AuthenticationFlowParmsUserLoginSecondStepEnum>;
}
export declare const AuthenticationFlowParmsIdpLoginSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type AuthenticationFlowParmsIdpLoginSecondStepEnum = typeof AuthenticationFlowParmsIdpLoginSecondStepEnum[keyof typeof AuthenticationFlowParmsIdpLoginSecondStepEnum];
export declare const AuthenticationFlowParmsUserLoginFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type AuthenticationFlowParmsUserLoginFirstStepEnum = typeof AuthenticationFlowParmsUserLoginFirstStepEnum[keyof typeof AuthenticationFlowParmsUserLoginFirstStepEnum];
export declare const AuthenticationFlowParmsUserLoginSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type AuthenticationFlowParmsUserLoginSecondStepEnum = typeof AuthenticationFlowParmsUserLoginSecondStepEnum[keyof typeof AuthenticationFlowParmsUserLoginSecondStepEnum];
/**
 * Parameters specifying the new state of the token.
 * @export
 * @interface ChangeStateParms
 */
export interface ChangeStateParms {
    /**
     * The new state of the token.  The state can be changed from ACTIVE to INACTIVE or INACTIVE to ACTIVE.
     * @type {string}
     * @memberof ChangeStateParms
     */
    'state': ChangeStateParmsStateEnum;
}
export declare const ChangeStateParmsStateEnum: {
    readonly New: "NEW";
    readonly Activating: "ACTIVATING";
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Unassigned: "UNASSIGNED";
};
export type ChangeStateParmsStateEnum = typeof ChangeStateParmsStateEnum[keyof typeof ChangeStateParmsStateEnum];
/**
 * A list of origins that cross-origin requests are allowed from.
 * @export
 * @interface CorsOrigin
 */
export interface CorsOrigin {
    /**
     * CORS origin UUID. This value is generated when the origin is created.
     * @type {string}
     * @memberof CorsOrigin
     */
    'id'?: string;
    /**
     * Allowed CORS origin. This value can contain port. Wildcard can be used for ports but not for domains.
     * @type {string}
     * @memberof CorsOrigin
     */
    'origin'?: string;
}
/**
 * Information about the status of an asynchronous create tenant request.
 * @export
 * @interface CreateTenantAsyncStatus
 */
export interface CreateTenantAsyncStatus {
    /**
     * The error message describing the first error encountered processing the operation.
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'errorMessage'?: string;
    /**
     * The unique UUID of the operation. Used to get status and results of operation
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'id': string;
    /**
     * The time this operation was initialized.
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'initTime'?: string;
    /**
     * The time at which the operation completed processing.
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'processingEndTime'?: string;
    /**
     * The time at which the operation began processing.
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'processingStartTime'?: string;
    /**
     * How long the operation took to complete processing in milliseconds.
     * @type {number}
     * @memberof CreateTenantAsyncStatus
     */
    'processingTime'?: number;
    /**
     * The state of the operation.
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'state': CreateTenantAsyncStatusStateEnum;
    /**
     * The subject of this operation.
     * @type {string}
     * @memberof CreateTenantAsyncStatus
     */
    'subject'?: string;
}
export declare const CreateTenantAsyncStatusStateEnum: {
    readonly Failed: "FAILED";
    readonly Cancelled: "CANCELLED";
    readonly Completed: "COMPLETED";
    readonly AwaitingData: "AWAITING_DATA";
    readonly Processing: "PROCESSING";
    readonly Scheduled: "SCHEDULED";
};
export type CreateTenantAsyncStatusStateEnum = typeof CreateTenantAsyncStatusStateEnum[keyof typeof CreateTenantAsyncStatusStateEnum];
/**
 * Parameters used to create the new tenant.
 * @export
 * @interface CreateTenantParms
 */
export interface CreateTenantParms {
    /**
     *
     * @type {AdminApiApplicationParms}
     * @memberof CreateTenantParms
     */
    'adminApiApplication'?: AdminApiApplicationParms;
    /**
     *
     * @type {UserParms}
     * @memberof CreateTenantParms
     */
    'adminUser': UserParms;
    /**
     * A flag indicating if a welcome email should be delivered.  If not set, it defaults to false.
     * @type {boolean}
     * @memberof CreateTenantParms
     */
    'deliverWelcomeEmail'?: boolean;
    /**
     *
     * @type {EntitlementParms}
     * @memberof CreateTenantParms
     */
    'entitlements'?: EntitlementParms;
    /**
     *
     * @type {TenantParms}
     * @memberof CreateTenantParms
     */
    'tenant': TenantParms;
}
/**
 * Information returned from a create tenant request.
 * @export
 * @interface CreateTenantResult
 */
export interface CreateTenantResult {
    /**
     *
     * @type {AdminApiApplication}
     * @memberof CreateTenantResult
     */
    'adminApiApplication'?: AdminApiApplication;
    /**
     *
     * @type {User}
     * @memberof CreateTenantResult
     */
    'adminUser': User;
    /**
     *
     * @type {Tenant}
     * @memberof CreateTenantResult
     */
    'tenant': Tenant;
}
/**
 * When creating multiple users in a single request, the CreateUserResult value contains the result for a single user.  It will either contain information about the user created or error information describing why the create operation failed.
 * @export
 * @interface CreateUserResult
 */
export interface CreateUserResult {
    /**
     *
     * @type {ErrorInfo}
     * @memberof CreateUserResult
     */
    'error'?: ErrorInfo;
    /**
     * Indicates if the user was successfully created (true) or not (false).
     * @type {boolean}
     * @memberof CreateUserResult
     */
    'success': boolean;
    /**
     *
     * @type {User}
     * @memberof CreateUserResult
     */
    'user'?: User;
}
/**
 * The list of users to be created.
 * @export
 * @interface CreateUsersParms
 */
export interface CreateUsersParms {
    /**
     * If set to true, the operation stops on the first operation that fails.  Otherwise the operation continues for each specified user. If not specified, this defaults to false.
     * @type {boolean}
     * @memberof CreateUsersParms
     */
    'stopOnError'?: boolean;
    /**
     * The list of users to be created.
     * @type {Array<UserParms>}
     * @memberof CreateUsersParms
     */
    'users': Array<UserParms>;
}
/**
 * The DateTimeContext context specifies an allowed or disallowed date or time range. Only a date range or a time range can be specified. Risk is applied to the authentication if the current time is outside an allowed range or inside a disallowed range. A date range specifies a start and end date.  For example 2019/01/01 to 2019/03/01. A time range species a start and end time and days of the week.  For example Monday to Friday, 8am to 5pm.
 * @export
 * @interface DateTimeContext
 */
export interface DateTimeContext {
    /**
     * If true, the startDateTime and endDateTime define the allowed range. If false, the startDateTime and endDateTime define the denied range.
     * @type {boolean}
     * @memberof DateTimeContext
     */
    'allowedDateTime'?: boolean;
    /**
     * If true, the startTime and endTime define the allowed time range. If false, the startTime and endTime define the denied time range.
     * @type {boolean}
     * @memberof DateTimeContext
     */
    'allowedTime'?: boolean;
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof DateTimeContext
     */
    'denyAccess': boolean;
    /**
     * If specifying a date range, the end date of the range.
     * @type {string}
     * @memberof DateTimeContext
     */
    'endDateTime'?: string;
    /**
     * If specifying a time range, the end time of the range. The value should be of the form hh:mm:ss
     * @type {string}
     * @memberof DateTimeContext
     */
    'endTime'?: string;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof DateTimeContext
     */
    'riskPoint': number;
    /**
     * If specifying a date range, the start date of the range.
     * @type {string}
     * @memberof DateTimeContext
     */
    'startDateTime'?: string;
    /**
     * If specifying a time range, the start time of the range. The value should be of the form hh:mm:ss
     * @type {string}
     * @memberof DateTimeContext
     */
    'startTime'?: string;
    /**
     * If specifying a time range, the days of the week to which the time range will apply.
     * @type {Array<string>}
     * @memberof DateTimeContext
     */
    'weekDays'?: Array<DateTimeContextWeekDaysEnum>;
    /**
     * The time zone or fixed offset in which dates and times are interpreted. For example, a value like -05:00 to specify a fixed offset of 5 hours behind UTC, or a time zone ID like America/New_York to account for regional time zone rules, including daylight saving time. Set this value if you want to interpret times (e.g., 8 AM to 5 PM) in the customer\'s local time zone rather than the timezone of the service. If not specified, the default is Z (UTC).
     * @type {string}
     * @memberof DateTimeContext
     */
    'zoneId'?: string;
}
export declare const DateTimeContextWeekDaysEnum: {
    readonly Mon: "Mon";
    readonly Tue: "Tue";
    readonly Wed: "Wed";
    readonly Thu: "Thu";
    readonly Fri: "Fri";
    readonly Sat: "Sat";
    readonly Sun: "Sun";
};
export type DateTimeContextWeekDaysEnum = typeof DateTimeContextWeekDaysEnum[keyof typeof DateTimeContextWeekDaysEnum];
/**
 * The DeleteAuthenticationFlowResult contains the outcome of an authentication flow delete operation. It will indicate if the operation succeeded and, if it failed, it will include error information describing why the operation failed.
 * @export
 * @interface DeleteAuthenticationFlowResult
 */
export interface DeleteAuthenticationFlowResult {
    /**
     * Indicates if the authentication flow was deleted.
     * @type {boolean}
     * @memberof DeleteAuthenticationFlowResult
     */
    'deleted': boolean;
    /**
     *
     * @type {ErrorInfo}
     * @memberof DeleteAuthenticationFlowResult
     */
    'error'?: ErrorInfo;
    /**
     * List of resource rules using the authentication flow if the delete fails because the authentication flow is in use. It will be null in any other case.
     * @type {Array<string>}
     * @memberof DeleteAuthenticationFlowResult
     */
    'resourceRules'?: Array<string>;
}
/**
 * When deleting multiple users in a single request, the DeleteUserParms value contains the id of a single user to be deleted.
 * @export
 * @interface DeleteUserParms
 */
export interface DeleteUserParms {
    /**
     * The id of the user to be deleted.  The type of the id is specified by idType.
     * @type {string}
     * @memberof DeleteUserParms
     */
    'id': string;
    /**
     * The type of the id identifying the user.  The value can be one of UUID (the user\'s internal UUID), USERID (the user\'s userId) or EXTERNALID (the externalId of the user). If not specified, this defaults to UUID.
     * @type {string}
     * @memberof DeleteUserParms
     */
    'idType'?: DeleteUserParmsIdTypeEnum;
}
export declare const DeleteUserParmsIdTypeEnum: {
    readonly Uuid: "UUID";
    readonly Userid: "USERID";
    readonly Externalid: "EXTERNALID";
};
export type DeleteUserParmsIdTypeEnum = typeof DeleteUserParmsIdTypeEnum[keyof typeof DeleteUserParmsIdTypeEnum];
/**
 * When deleting multiple users in a single request, the DeleteUserResult value contains the result for a single user.  It will indicate if the operation succeeded and if it failed will include error information describing why the  operation failed.
 * @export
 * @interface DeleteUserResult
 */
export interface DeleteUserResult {
    /**
     *
     * @type {ErrorInfo}
     * @memberof DeleteUserResult
     */
    'error'?: ErrorInfo;
    /**
     * Indicates if the user was successfully deleted (true) or not (false).
     * @type {boolean}
     * @memberof DeleteUserResult
     */
    'success': boolean;
}
/**
 * The list of UUIDs of users to be deleted.
 * @export
 * @interface DeleteUsersParms
 */
export interface DeleteUsersParms {
    /**
     * If set to true, the operation stops on the first operation that fails.  Otherwise the operation continues for each specified user. If not specified, this defaults to false.
     * @type {boolean}
     * @memberof DeleteUsersParms
     */
    'stopOnError'?: boolean;
    /**
     * The list of users to be deleted.
     * @type {Array<DeleteUserParms>}
     * @memberof DeleteUsersParms
     */
    'users': Array<DeleteUserParms>;
}
/**
 * Device Certificate checks to see if the user presented a trusted device certificate that\'s valid. If not found, risk is applied.
 * @export
 * @interface DeviceCertificateContext
 */
export interface DeviceCertificateContext {
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof DeviceCertificateContext
     */
    'denyAccess': boolean;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof DeviceCertificateContext
     */
    'riskPoint': number;
}
/**
 * Information stored about a digital id.
 * @export
 * @interface DigitalId
 */
export interface DigitalId {
    /**
     * The certificates associated with this digital id.
     * @type {Array<DigitalIdCert>}
     * @memberof DigitalId
     */
    'certificates'?: Array<DigitalIdCert>;
    /**
     * The UUID of the digital Id config that defines this digital Id.
     * @type {string}
     * @memberof DigitalId
     */
    'digitalIdConfigId'?: string;
    /**
     * The name of the digital id Config that defines this digital Id.
     * @type {string}
     * @memberof DigitalId
     */
    'digitalIdConfigName'?: string;
    /**
     * The type of this digital Id.
     * @type {string}
     * @memberof DigitalId
     */
    'digitalIdConfigType'?: DigitalIdDigitalIdConfigTypeEnum;
    /**
     * The current DN of the digital id.
     * @type {string}
     * @memberof DigitalId
     */
    'dn'?: string;
    /**
     * The UUID of this DigitalId.
     * @type {string}
     * @memberof DigitalId
     */
    'id'?: string;
}
export declare const DigitalIdDigitalIdConfigTypeEnum: {
    readonly PivCardholder: "PIV_CARDHOLDER";
    readonly PivCard: "PIV_CARD";
};
export type DigitalIdDigitalIdConfigTypeEnum = typeof DigitalIdDigitalIdConfigTypeEnum[keyof typeof DigitalIdDigitalIdConfigTypeEnum];
/**
 * Information stored about a certificate associated with a digital id.
 * @export
 * @interface DigitalIdCert
 */
export interface DigitalIdCert {
    /**
     * The description providing the purpose of this certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'description'?: string;
    /**
     * The UUID of the digital id to which this certificate belongs
     * @type {string}
     * @memberof DigitalIdCert
     */
    'digitalIdId'?: string;
    /**
     * The type of the digital Id to which this certificate belongs.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'digitalIdType'?: DigitalIdCertDigitalIdTypeEnum;
    /**
     * The UUID of this Digital Id Certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'id'?: string;
    /**
     * The issuer DN of this certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'issuerDN'?: string;
    /**
     * The expiry date of this certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'notAfter'?: string;
    /**
     * The issue date of this certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'notBefore'?: string;
    /**
     * The name of the PIV container that stores this certificate on the smart card.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'pivContainer'?: string;
    /**
     * The serial number of this certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'serialNumber'?: string;
    /**
     * The status of this certificate. If not set, the revocation status has not been retrieved from the CA.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'status'?: DigitalIdCertStatusEnum;
    /**
     * The subject DN of this certificate.
     * @type {string}
     * @memberof DigitalIdCert
     */
    'subjectDN'?: string;
}
export declare const DigitalIdCertDigitalIdTypeEnum: {
    readonly PivCardholder: "PIV_CARDHOLDER";
    readonly PivCard: "PIV_CARD";
};
export type DigitalIdCertDigitalIdTypeEnum = typeof DigitalIdCertDigitalIdTypeEnum[keyof typeof DigitalIdCertDigitalIdTypeEnum];
export declare const DigitalIdCertStatusEnum: {
    readonly Active: "ACTIVE";
    readonly Revoked: "REVOKED";
    readonly Hold: "HOLD";
    readonly Expired: "EXPIRED";
    readonly NotAvailable: "NOT_AVAILABLE";
};
export type DigitalIdCertStatusEnum = typeof DigitalIdCertStatusEnum[keyof typeof DigitalIdCertStatusEnum];
/**
 * Information that defines how digital ids are created in the CA.
 * @export
 * @interface DigitalIdConfig
 */
export interface DigitalIdConfig {
    /**
     * If true, digital ids using this config will be set to have all CA groups.
     * @type {boolean}
     * @memberof DigitalIdConfig
     */
    'allCAGroups'?: boolean;
    /**
     * If allCAGroups is set to false then digital ids using this config will use this specified list of CA groups.
     * @type {Array<string>}
     * @memberof DigitalIdConfig
     */
    'caGroups'?: Array<string>;
    /**
     * The UUID of the CA for this digital id config.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'caId'?: string;
    /**
     * The name of the CA for this digital id config.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'caName'?: string;
    /**
     * The CA type of this Digital Id Config.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'caType'?: DigitalIdConfigCaTypeEnum;
    /**
     * A list of cert templates associated with this digital id config.
     * @type {Array<DigitalIdConfigCertTemplate>}
     * @memberof DigitalIdConfig
     */
    'certTemplates'?: Array<DigitalIdConfigCertTemplate>;
    /**
     * The CA certificate type which digital ids using this config will use.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'certificateType'?: string;
    /**
     * When creating a digital id config, default values can be provided from this specified digital id config template.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'digitalIdConfigTemplateId'?: string;
    /**
     * A flag indicating if digital ids using this config will create directory entries in the CA.
     * @type {boolean}
     * @memberof DigitalIdConfig
     */
    'directoryEntry'?: boolean;
    /**
     * The format which digital ids using this config will use for their DN.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'dnFormat'?: string;
    /**
     * Whether digital ids using this config should include the searchbase in their DN.
     * @type {boolean}
     * @memberof DigitalIdConfig
     */
    'dnFormatSearchbaseIncluded'?: boolean;
    /**
     * The UUID of this Digital Id Config.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'id'?: string;
    /**
     * The name of this Digital Id Config.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'name'?: string;
    /**
     * The CA role which digital ids using this config will use.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'role'?: string;
    /**
     * The searchbase within the CA in which digital ids using this config will be created.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'searchbase'?: string;
    /**
     * A list of subjectAltNames associated with this digital id config.
     * @type {Array<DigitalIdConfigSubjectAltName>}
     * @memberof DigitalIdConfig
     */
    'subjectAltNames'?: Array<DigitalIdConfigSubjectAltName>;
    /**
     * The type of digital id.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'type'?: DigitalIdConfigTypeEnum;
    /**
     * The CA user type which digital ids using this config will use.
     * @type {string}
     * @memberof DigitalIdConfig
     */
    'userType'?: string;
    /**
     * A list of variables associated with this digital id config.
     * @type {Array<DigitalIdConfigVariable>}
     * @memberof DigitalIdConfig
     */
    'variables'?: Array<DigitalIdConfigVariable>;
}
export declare const DigitalIdConfigCaTypeEnum: {
    readonly Edc: "EDC";
    readonly Ms: "MS";
    readonly Pkiaas: "PKIAAS";
};
export type DigitalIdConfigCaTypeEnum = typeof DigitalIdConfigCaTypeEnum[keyof typeof DigitalIdConfigCaTypeEnum];
export declare const DigitalIdConfigTypeEnum: {
    readonly PivCardholder: "PIV_CARDHOLDER";
    readonly PivCard: "PIV_CARD";
};
export type DigitalIdConfigTypeEnum = typeof DigitalIdConfigTypeEnum[keyof typeof DigitalIdConfigTypeEnum];
/**
 * Information that describes a Digital Id Config Cert Template.
 * @export
 * @interface DigitalIdConfigCertTemplate
 */
export interface DigitalIdConfigCertTemplate {
    /**
     * The UUID of the Digital Id Config that owns this Digital Id Config Cert Template.
     * @type {string}
     * @memberof DigitalIdConfigCertTemplate
     */
    'digitalIdConfigId'?: string;
    /**
     * The UUID of the Digital Id Config Cert Template.
     * @type {string}
     * @memberof DigitalIdConfigCertTemplate
     */
    'id'?: string;
    /**
     * The key type of the Digital Id Config Cert Template.
     * @type {string}
     * @memberof DigitalIdConfigCertTemplate
     */
    'keyType'?: DigitalIdConfigCertTemplateKeyTypeEnum;
    /**
     * The lifetime (in months) of the certificate created with this Digital Id Config Cert Template.
     * @type {number}
     * @memberof DigitalIdConfigCertTemplate
     */
    'lifetime'?: number;
    /**
     * The name of the Digital Id Config Cert Template.
     * @type {string}
     * @memberof DigitalIdConfigCertTemplate
     */
    'name'?: string;
    /**
     * The PIV container of the Digital Id Config Cert Template.
     * @type {string}
     * @memberof DigitalIdConfigCertTemplate
     */
    'pivContainer'?: DigitalIdConfigCertTemplatePivContainerEnum;
    /**
     * A flag indicating whether to use the CA\'s default certificate lifetime.
     * @type {boolean}
     * @memberof DigitalIdConfigCertTemplate
     */
    'useCaDefaultCertLifetime'?: boolean;
}
export declare const DigitalIdConfigCertTemplateKeyTypeEnum: {
    readonly Rsa2048: "RSA_2048";
    readonly EcP256: "EC_P_256";
};
export type DigitalIdConfigCertTemplateKeyTypeEnum = typeof DigitalIdConfigCertTemplateKeyTypeEnum[keyof typeof DigitalIdConfigCertTemplateKeyTypeEnum];
export declare const DigitalIdConfigCertTemplatePivContainerEnum: {
    readonly PivAuth: "PivAuth";
    readonly CardAuth: "CardAuth";
    readonly DigSig: "DigSig";
    readonly KeyMgmt: "KeyMgmt";
    readonly None: "None";
};
export type DigitalIdConfigCertTemplatePivContainerEnum = typeof DigitalIdConfigCertTemplatePivContainerEnum[keyof typeof DigitalIdConfigCertTemplatePivContainerEnum];
/**
 * Information that describes a Digital Id Config SubjectAltName.
 * @export
 * @interface DigitalIdConfigSubjectAltName
 */
export interface DigitalIdConfigSubjectAltName {
    /**
     * The UUID of the digital id config that owns this subjectAltName.
     * @type {string}
     * @memberof DigitalIdConfigSubjectAltName
     */
    'digitalIdConfigId'?: string;
    /**
     * The UUID of this Digital Id Config SubjectAltName.
     * @type {string}
     * @memberof DigitalIdConfigSubjectAltName
     */
    'id'?: string;
    /**
     * The type of subjectAltName.
     * @type {string}
     * @memberof DigitalIdConfigSubjectAltName
     */
    'type'?: DigitalIdConfigSubjectAltNameTypeEnum;
    /**
     * The value for the subjectAltName.
     * @type {string}
     * @memberof DigitalIdConfigSubjectAltName
     */
    'value'?: string;
}
export declare const DigitalIdConfigSubjectAltNameTypeEnum: {
    readonly Email: "EMAIL";
    readonly Upn: "UPN";
    readonly Ip: "IP";
    readonly Dns: "DNS";
    readonly Other: "OTHER";
    readonly X400: "X400";
    readonly Dn: "DN";
    readonly Edi: "EDI";
    readonly Uri: "URI";
    readonly RegisteredId: "REGISTERED_ID";
};
export type DigitalIdConfigSubjectAltNameTypeEnum = typeof DigitalIdConfigSubjectAltNameTypeEnum[keyof typeof DigitalIdConfigSubjectAltNameTypeEnum];
/**
 * Information that describes a Digital Id Config Variable.
 * @export
 * @interface DigitalIdConfigVariable
 */
export interface DigitalIdConfigVariable {
    /**
     * The UUID of the Digital Id Config that owns this Digital Id Config Variable.
     * @type {string}
     * @memberof DigitalIdConfigVariable
     */
    'digitalIdConfigId'?: string;
    /**
     * The UUID of the Digital Id Config Variable.
     * @type {string}
     * @memberof DigitalIdConfigVariable
     */
    'id'?: string;
    /**
     * A flag indicating if values for this variable are included in the Digital Id\'s DN when it is generated by the CA.
     * @type {boolean}
     * @memberof DigitalIdConfigVariable
     */
    'includedInDN'?: boolean;
    /**
     * The name of the Digital Id Config Variable.
     * @type {string}
     * @memberof DigitalIdConfigVariable
     */
    'name'?: string;
    /**
     * The type of the Digital Id Config Variable.
     * @type {string}
     * @memberof DigitalIdConfigVariable
     */
    'type'?: DigitalIdConfigVariableTypeEnum;
    /**
     * The value of the Digital Id Config Variable.
     * @type {string}
     * @memberof DigitalIdConfigVariable
     */
    'value'?: string;
}
export declare const DigitalIdConfigVariableTypeEnum: {
    readonly Certificate: "CERTIFICATE";
    readonly User: "USER";
    readonly Variable: "VARIABLE";
    readonly Custom: "CUSTOM";
};
export type DigitalIdConfigVariableTypeEnum = typeof DigitalIdConfigVariableTypeEnum[keyof typeof DigitalIdConfigVariableTypeEnum];
/**
 * A Directory defines the information returned about a directory.
 * @export
 * @interface Directory
 */
export interface Directory {
    /**
     * The name of the AD attribute value that will be mapped into comma seperated string value of alias
     * @type {string}
     * @memberof Directory
     */
    'aliasMappingName'?: string;
    /**
     * The SSL certificate to connect to the Directory with.
     * @type {string}
     * @memberof Directory
     * @deprecated
     */
    'certificate'?: string;
    /**
     * Directory attribure mappings.
     * @type {Array<DirectoryAttributeMapping>}
     * @memberof Directory
     */
    'directoryAttributeMappings'?: Array<DirectoryAttributeMapping>;
    /**
     * The connections that you want to connect when syncing.
     * @type {Array<DirectoryConnection>}
     * @memberof Directory
     */
    'directoryConnections'?: Array<DirectoryConnection>;
    /**
     *
     * @type {DirectorySync}
     * @memberof Directory
     */
    'directorySync'?: DirectorySync;
    /**
     * The UUID of the directory sync
     * @type {string}
     * @memberof Directory
     */
    'directorySyncId'?: string;
    /**
     * Directory group filters.
     * @type {Array<GroupFilter>}
     * @memberof Directory
     */
    'groupFilters'?: Array<GroupFilter>;
    /**
     * The hostname of the Directory Can be an IP address or a hostname.
     * @type {string}
     * @memberof Directory
     * @deprecated
     */
    'hostname'?: string;
    /**
     * The UUID of the Directory.
     * @type {string}
     * @memberof Directory
     */
    'id'?: string;
    /**
     * The name of the Directory.
     * @type {string}
     * @memberof Directory
     */
    'name'?: string;
    /**
     * The password to connect to the Directory with.
     * @type {string}
     * @memberof Directory
     */
    'password'?: string;
    /**
     * The port to connect to the Directory over.
     * @type {number}
     * @memberof Directory
     * @deprecated
     */
    'port'?: number;
    /**
     * The root domain naming context of the Directory.
     * @type {string}
     * @memberof Directory
     */
    'rootDomainNamingContext'?: string;
    /**
     * The searchbases that you want to search when syncing.
     * @type {Array<SearchBase>}
     * @memberof Directory
     */
    'searchBases'?: Array<SearchBase>;
    /**
     * The type of the Directory.
     * @type {string}
     * @memberof Directory
     */
    'type'?: DirectoryTypeEnum;
    /**
     * Whether or not to connect to the Directory using an SSL certificate.
     * @type {boolean}
     * @memberof Directory
     * @deprecated
     */
    'useSsl'?: boolean;
    /**
     * The username to connect to the Directory with. Value must be a fully distinguished name or UPN.
     * @type {string}
     * @memberof Directory
     */
    'userName'?: string;
}
export declare const DirectoryTypeEnum: {
    readonly Ad: "AD";
    readonly Ldap: "LDAP";
};
export type DirectoryTypeEnum = typeof DirectoryTypeEnum[keyof typeof DirectoryTypeEnum];
/**
 * A DirectoryAttributeMapping defines the information returned about a directory attribute mapping. A directory attribute mapping specifies which directory attribute values are mapped into which Identity as a Service user attributes.
 * @export
 * @interface DirectoryAttributeMapping
 */
export interface DirectoryAttributeMapping {
    /**
     * The name of the directory attribute being mapped.
     * @type {string}
     * @memberof DirectoryAttributeMapping
     */
    'directoryAttributeName'?: string;
    /**
     * The UUID of the Directory the attribute mapping belongs to.
     * @type {string}
     * @memberof DirectoryAttributeMapping
     */
    'directoryId'?: string;
    /**
     * The UUID of the attribute mapping.
     * @type {string}
     * @memberof DirectoryAttributeMapping
     */
    'id'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof DirectoryAttributeMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the Identity as a Service User Attribute being mapped to.
     * @type {string}
     * @memberof DirectoryAttributeMapping
     */
    'userAttributeId'?: string;
}
/**
 * The connections that you want to connect when syncing.
 * @export
 * @interface DirectoryConnection
 */
export interface DirectoryConnection {
    /**
     * The SSL certificate to connect to the Directory with.
     * @type {string}
     * @memberof DirectoryConnection
     */
    'certificate'?: string;
    /**
     * The UUID of the Directory the connection belongs to.
     * @type {string}
     * @memberof DirectoryConnection
     */
    'directoryId'?: string;
    /**
     * The Directory hostname or IP address.
     * @type {string}
     * @memberof DirectoryConnection
     */
    'hostname'?: string;
    /**
     * The UUID of the Directory connection.
     * @type {string}
     * @memberof DirectoryConnection
     */
    'id'?: string;
    /**
     * The Directory port.
     * @type {number}
     * @memberof DirectoryConnection
     */
    'port'?: number;
    /**
     * Whether or not to connect to the Directory using an SSL certificate.
     * @type {boolean}
     * @memberof DirectoryConnection
     */
    'useSsl'?: boolean;
}
/**
 * A DirectorySync defines the information returned about the directory sync configuration of a directory.
 * @export
 * @interface DirectorySync
 */
export interface DirectorySync {
    /**
     * The rate at which the directory will be queried in milliseconds
     * @type {number}
     * @memberof DirectorySync
     */
    'crawlFrequency'?: number;
    /**
     *
     * @type {Directory}
     * @memberof DirectorySync
     */
    'directory'?: Directory;
    /**
     * The ID of the directory.
     * @type {string}
     * @memberof DirectorySync
     */
    'directoryId'?: string;
    /**
     * The UUID of the Directory Sync Gateway Agent.
     * @type {string}
     * @memberof DirectorySync
     */
    'directorySyncAgentId'?: string;
    /**
     * The group name attribute
     * @type {string}
     * @memberof DirectorySync
     */
    'groupNameAttribute'?: string;
    /**
     * The Group Object Class
     * @type {string}
     * @memberof DirectorySync
     */
    'groupObjectClass'?: string;
    /**
     * Group synchronization will be done based on the selected option.
     * @type {string}
     * @memberof DirectorySync
     */
    'groupSynchronizationType'?: DirectorySyncGroupSynchronizationTypeEnum;
    /**
     * The UUID of the directory.
     * @type {string}
     * @memberof DirectorySync
     */
    'id'?: string;
    /**
     * The last time the directory was updated.
     * @type {string}
     * @memberof DirectorySync
     */
    'lastUpdate'?: string;
    /**
     * The number of records that should returned per query. Default is 25.
     * @type {number}
     * @memberof DirectorySync
     */
    'pageSize'?: number;
    /**
     * The status of the Directory Sync.
     * @type {string}
     * @memberof DirectorySync
     */
    'state'?: DirectorySyncStateEnum;
    /**
     * User synchronization will be done based on the selected option.
     * @type {string}
     * @memberof DirectorySync
     */
    'userDesyncPolicy'?: DirectorySyncUserDesyncPolicyEnum;
    /**
     * The User Object Class
     * @type {string}
     * @memberof DirectorySync
     */
    'userObjectClass'?: string;
    /**
     * The User Unique Id Attribute
     * @type {string}
     * @memberof DirectorySync
     */
    'userUniqueIdAttribute'?: string;
    /**
     * How long to wait between notifications in milliseconds.
     * @type {number}
     * @memberof DirectorySync
     */
    'waitBetweenNotifications'?: number;
}
export declare const DirectorySyncGroupSynchronizationTypeEnum: {
    readonly All: "ALL";
    readonly Filter: "FILTER";
    readonly None: "NONE";
};
export type DirectorySyncGroupSynchronizationTypeEnum = typeof DirectorySyncGroupSynchronizationTypeEnum[keyof typeof DirectorySyncGroupSynchronizationTypeEnum];
export declare const DirectorySyncStateEnum: {
    readonly Unknown: "UNKNOWN";
    readonly Error: "ERROR";
    readonly PendingChanges: "PENDING_CHANGES";
    readonly Synced: "SYNCED";
    readonly OutOfSync: "OUT_OF_SYNC";
    readonly Crawling: "CRAWLING";
    readonly CrawlComplete: "CRAWL_COMPLETE";
    readonly NotifyingGroups: "NOTIFYING_GROUPS";
    readonly NotifyingGroupsUsers: "NOTIFYING_GROUPS_USERS";
    readonly NotifyingUsers: "NOTIFYING_USERS";
    readonly NotifyComplete: "NOTIFY_COMPLETE";
    readonly Syncing: "SYNCING";
    readonly Failed: "FAILED";
};
export type DirectorySyncStateEnum = typeof DirectorySyncStateEnum[keyof typeof DirectorySyncStateEnum];
export declare const DirectorySyncUserDesyncPolicyEnum: {
    readonly UserLocallyManagedEnabled: "USER_LOCALLY_MANAGED_ENABLED";
    readonly UserLocallyManagedDisabled: "USER_LOCALLY_MANAGED_DISABLED";
    readonly UserDeleted: "USER_DELETED";
};
export type DirectorySyncUserDesyncPolicyEnum = typeof DirectorySyncUserDesyncPolicyEnum[keyof typeof DirectorySyncUserDesyncPolicyEnum];
/**
 * A DirectorySyncStatusInfo defines the information returned about the status of the last directory synchronization.
 * @export
 * @interface DirectorySyncStatusInfo
 */
export interface DirectorySyncStatusInfo {
    /**
     * The name of the directory.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'directoryName'?: string;
    /**
     * The name of the directory or searchbase is being processed.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'directoryOrSearchBaseBeingProcessed'?: string;
    /**
     * Comma separated list of errors occurred during the AD-sync process.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'errors'?: string;
    /**
     * The number of groups added.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsAdded'?: number;
    /**
     * The number of groups successfully created in the service database.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsCreateCount'?: number;
    /**
     * The number of groups successfully deleted from the service database.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsDeleteCount'?: number;
    /**
     * The number of groups failed to be uploaded.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsFailCount'?: number;
    /**
     * The number of groups skipped due to errors.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsFailed'?: number;
    /**
     * The number of groups processed successfully.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     * @deprecated
     */
    'groupsProcessedSuccessfully'?: number;
    /**
     * The number of groups removed.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsRemoved'?: number;
    /**
     * The number of groups changed.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsSyncedWithChanges'?: number;
    /**
     * The number of groups synced with no changes.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsSyncedWithNoChanges'?: number;
    /**
     * The number of groups successfully updated in the service database.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'groupsUpdateCount'?: number;
    /**
     * The UUID of the DirectorySyncStatusInfo.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'id'?: string;
    /**
     * The number of search bases already processed.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'searchbasesProcessed'?: number;
    /**
     * The status of the Directory Sync processed.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'state'?: DirectorySyncStatusInfoStateEnum;
    /**
     * The time when the synchronization was started.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'syncStarted'?: string;
    /**
     * The last time the directory was updated.
     * @type {string}
     * @memberof DirectorySyncStatusInfo
     */
    'syncUpdated'?: string;
    /**
     * Total number of search bases to be processed.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'totalSearchbases'?: number;
    /**
     * Number of users added.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersAdded'?: number;
    /**
     * The number of users successfully created in the service database.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersCreateCount'?: number;
    /**
     * The number of users successfully deleted from the service database.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersDeleteCount'?: number;
    /**
     * The number of users failed to be uploaded.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersFailCount'?: number;
    /**
     * The number of users skipped due to errors.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersFailed'?: number;
    /**
     * The number of users processed successfully.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     * @deprecated
     */
    'usersProcessedSuccessfully'?: number;
    /**
     * The number of users removed.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersRemoved'?: number;
    /**
     * The number of users synced with changes.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersSyncedWithChanges'?: number;
    /**
     * The number of users synced with no changes.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersSyncedWithNoChanges'?: number;
    /**
     * The number of users successfully updated in the service database.
     * @type {number}
     * @memberof DirectorySyncStatusInfo
     */
    'usersUpdateCount'?: number;
}
export declare const DirectorySyncStatusInfoStateEnum: {
    readonly Crawling: "CRAWLING";
    readonly CrawlComplete: "CRAWL_COMPLETE";
    readonly Error: "ERROR";
    readonly NotifyingGroups: "NOTIFYING_GROUPS";
    readonly NotifyingGroupsUsers: "NOTIFYING_GROUPS_USERS";
    readonly NotifyingUsers: "NOTIFYING_USERS";
    readonly NotifyComplete: "NOTIFY_COMPLETE";
    readonly OutOfSync: "OUT_OF_SYNC";
    readonly PendingChanges: "PENDING_CHANGES";
    readonly Synced: "SYNCED";
    readonly Unknown: "UNKNOWN";
};
export type DirectorySyncStatusInfoStateEnum = typeof DirectorySyncStatusInfoStateEnum[keyof typeof DirectorySyncStatusInfoStateEnum];
/**
 * The parameters passed to customize email delivery to a user
 * @export
 * @interface EmailParms
 */
export interface EmailParms {
    /**
     * The name of the user attribute to use for email delivery. If not provided, the system-defined email attribute will be used.
     * @type {string}
     * @memberof EmailParms
     */
    'emailAttributeName'?: string;
}
/**
 *
 * @export
 * @interface Entitlement
 */
export interface Entitlement {
    /**
     *
     * @type {AdditionalFeature}
     * @memberof Entitlement
     */
    'additionalFeatures'?: AdditionalFeature;
    /**
     * The contract mode of a tenant, allowable values = \'PRODUCTION\', \'TRIAL\', example=\'TRIAL\'.
     * @type {string}
     * @memberof Entitlement
     */
    'contractMode'?: EntitlementContractModeEnum;
    /**
     * The contract number of this entitlement.
     * @type {string}
     * @memberof Entitlement
     */
    'contractNumber'?: string;
    /**
     * The customer ID.
     * @type {string}
     * @memberof Entitlement
     */
    'customerId'?: string;
    /**
     * The end date of this entitlement in UTC time.
     * @type {string}
     * @memberof Entitlement
     */
    'endDate': string;
    /**
     * The entitlement ID.
     * @type {string}
     * @memberof Entitlement
     */
    'entitlementId'?: string;
    /**
     *
     * @type {MobileFlashPass}
     * @memberof Entitlement
     */
    'flashPass'?: MobileFlashPass;
    /**
     *
     * @type {FleetManagement}
     * @memberof Entitlement
     */
    'fleetManagement'?: FleetManagement;
    /**
     * The unique UUID of this entitlement.
     * @type {string}
     * @memberof Entitlement
     */
    'id': string;
    /**
     *
     * @type {Issuance}
     * @memberof Entitlement
     */
    'issuance'?: Issuance;
    /**
     *
     * @type {PayToPrint}
     * @memberof Entitlement
     */
    'payToPrint'?: PayToPrint;
    /**
     *
     * @type {PrinterEntitlement}
     * @memberof Entitlement
     */
    'printer'?: PrinterEntitlement;
    /**
     * The quantity of this entitlement.
     * @type {number}
     * @memberof Entitlement
     */
    'quantity': number;
    /**
     * The unused quantity of this entitlement (USERS type only).
     * @type {number}
     * @memberof Entitlement
     */
    'remaining'?: number;
    /**
     * Whether Smart Card Smart Login is enabled or not.
     * @type {boolean}
     * @memberof Entitlement
     */
    'smartLoginEnabled'?: boolean;
    /**
     *
     * @type {SmsVoice}
     * @memberof Entitlement
     */
    'smsVoice'?: SmsVoice;
    /**
     * The start date of this entitlement in UTC time.
     * @type {string}
     * @memberof Entitlement
     */
    'startDate': string;
    /**
     * The status of this entitlement.
     * @type {string}
     * @memberof Entitlement
     */
    'status': EntitlementStatusEnum;
    /**
     * The subscription line ID.
     * @type {string}
     * @memberof Entitlement
     */
    'subscriptionLineId'?: string;
    /**
     * The type of this entitlement.
     * @type {string}
     * @memberof Entitlement
     */
    'type': EntitlementTypeEnum;
    /**
     * The entitlement bundles that defines the set of features available for authentication accounts.
     * @type {Array<ServiceBundle>}
     * @memberof Entitlement
     */
    'userBundles'?: Array<ServiceBundle>;
    /**
     * The billing type for user entitlements. Defaults to PRE_PAID if not provided.
     * @type {string}
     * @memberof Entitlement
     */
    'usersBillingType'?: EntitlementUsersBillingTypeEnum;
}
export declare const EntitlementContractModeEnum: {
    readonly Production: "PRODUCTION";
    readonly Trial: "TRIAL";
    readonly Unknown: "UNKNOWN";
};
export type EntitlementContractModeEnum = typeof EntitlementContractModeEnum[keyof typeof EntitlementContractModeEnum];
export declare const EntitlementStatusEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Terminated: "TERMINATED";
};
export type EntitlementStatusEnum = typeof EntitlementStatusEnum[keyof typeof EntitlementStatusEnum];
export declare const EntitlementTypeEnum: {
    readonly Users: "USERS";
    readonly Transactions: "TRANSACTIONS";
};
export type EntitlementTypeEnum = typeof EntitlementTypeEnum[keyof typeof EntitlementTypeEnum];
export declare const EntitlementUsersBillingTypeEnum: {
    readonly PrePaid: "PRE_PAID";
    readonly PayPerUse: "PAY_PER_USE";
};
export type EntitlementUsersBillingTypeEnum = typeof EntitlementUsersBillingTypeEnum[keyof typeof EntitlementUsersBillingTypeEnum];
/**
 * Parameters passed when setting the entitlements of a tenant. Entitlements are required.
 * @export
 * @interface EntitlementParms
 */
export interface EntitlementParms {
    /**
     *
     * @type {AdditionalFeature}
     * @memberof EntitlementParms
     */
    'additionalFeatures'?: AdditionalFeature;
    /**
     * The contract mode of a tenant (required during creation), allowable values = \'PRODUCTION\', \'TRIAL\'.
     * @type {string}
     * @memberof EntitlementParms
     */
    'contractMode'?: EntitlementParmsContractModeEnum;
    /**
     * The contract number.
     * @type {string}
     * @memberof EntitlementParms
     */
    'contractNumber'?: string;
    /**
     * The customer ID.
     * @type {string}
     * @memberof EntitlementParms
     */
    'customerId'?: string;
    /**
     * The date this entitlement will end.  The value must be after the start date. If not specified, this value defaults to the end date of the service provider\'s entitlement.
     * @type {string}
     * @memberof EntitlementParms
     */
    'endDate'?: string;
    /**
     * The entitlement ID.
     * @type {string}
     * @memberof EntitlementParms
     */
    'entitlementId'?: string;
    /**
     *
     * @type {FlashPassParms}
     * @memberof EntitlementParms
     */
    'flashPass'?: FlashPassParms;
    /**
     * Parameters passed when setting the fleet management entitlements of a tenant.
     * @type {object}
     * @memberof EntitlementParms
     */
    'fleetManagement'?: object;
    /**
     *
     * @type {IssuanceParms}
     * @memberof EntitlementParms
     */
    'issuance'?: IssuanceParms;
    /**
     * Parameters passed when setting the Printer entitlements of a tenant.
     * @type {object}
     * @memberof EntitlementParms
     */
    'printer'?: object;
    /**
     * The number of entitlements assigned to the tenant (required during creation). The service provider must have enough available entitlements to meet this request.
     * @type {number}
     * @memberof EntitlementParms
     */
    'quantity'?: number;
    /**
     * Whether Smart Card Smart Login is enabled or not.
     * @type {boolean}
     * @memberof EntitlementParms
     */
    'smartLoginEnabled'?: boolean;
    /**
     *
     * @type {SmsVoiceParms}
     * @memberof EntitlementParms
     */
    'smsVoice'?: SmsVoiceParms;
    /**
     * The date this entitlement will start.  If not specified, it defaults to the current date.  This value cannot be in the future.
     * @type {string}
     * @memberof EntitlementParms
     */
    'startDate'?: string;
    /**
     * The status of this entitlement.
     * @type {string}
     * @memberof EntitlementParms
     */
    'status'?: EntitlementParmsStatusEnum;
    /**
     * The subscription line ID.
     * @type {string}
     * @memberof EntitlementParms
     */
    'subscriptionLineId'?: string;
    /**
     * The type of entitlement.  Currently this value must be USERS.  If not specified, this value defaults to USERS.
     * @type {string}
     * @memberof EntitlementParms
     */
    'type'?: EntitlementParmsTypeEnum;
    /**
     * [DEPRECATED] The type of entitlement (ignored if type is provided).  Currently this value must be USERS. If not specified, this value defaults to USERS.
     * @type {string}
     * @memberof EntitlementParms
     * @deprecated
     */
    'usageType'?: EntitlementParmsUsageTypeEnum;
    /**
     * The entitlement bundles that defines the set of features available for authentication accounts.
     * @type {Array<ServiceBundle>}
     * @memberof EntitlementParms
     */
    'userBundles'?: Array<ServiceBundle>;
    /**
     * The billing type for user entitlements. Defaults to PRE_PAID if not provided.
     * @type {string}
     * @memberof EntitlementParms
     */
    'usersBillingType'?: EntitlementParmsUsersBillingTypeEnum;
}
export declare const EntitlementParmsContractModeEnum: {
    readonly Production: "PRODUCTION";
    readonly Trial: "TRIAL";
    readonly Unknown: "UNKNOWN";
};
export type EntitlementParmsContractModeEnum = typeof EntitlementParmsContractModeEnum[keyof typeof EntitlementParmsContractModeEnum];
export declare const EntitlementParmsStatusEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Terminated: "TERMINATED";
};
export type EntitlementParmsStatusEnum = typeof EntitlementParmsStatusEnum[keyof typeof EntitlementParmsStatusEnum];
export declare const EntitlementParmsTypeEnum: {
    readonly Users: "USERS";
    readonly Transactions: "TRANSACTIONS";
};
export type EntitlementParmsTypeEnum = typeof EntitlementParmsTypeEnum[keyof typeof EntitlementParmsTypeEnum];
export declare const EntitlementParmsUsageTypeEnum: {
    readonly Users: "USERS";
    readonly Transactions: "TRANSACTIONS";
};
export type EntitlementParmsUsageTypeEnum = typeof EntitlementParmsUsageTypeEnum[keyof typeof EntitlementParmsUsageTypeEnum];
export declare const EntitlementParmsUsersBillingTypeEnum: {
    readonly PrePaid: "PRE_PAID";
    readonly PayPerUse: "PAY_PER_USE";
};
export type EntitlementParmsUsersBillingTypeEnum = typeof EntitlementParmsUsersBillingTypeEnum[keyof typeof EntitlementParmsUsersBillingTypeEnum];
/**
 * Information about an attribute that was added or removed from an entity.
 * @export
 * @interface EntityAttribute
 */
export interface EntityAttribute {
    /**
     * The name of the attribute.
     * @type {string}
     * @memberof EntityAttribute
     */
    'name'?: string;
    /**
     * The value of the attribute.
     * @type {string}
     * @memberof EntityAttribute
     */
    'value'?: string;
}
/**
 * New Entrust ST Authenticator settings.
 * @export
 * @interface EntrustSTAuthenticatorSettings
 */
export interface EntrustSTAuthenticatorSettings {
    /**
     * The amount of time in seconds that an activation request is valid.  Default is 300 seconds.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'activationLifetime'?: number;
    /**
     * The list of activation types that will be performed.  Allowed values are: CLASSIC (return activation values that must be manually entered into the mobile application), ONLINE (return a link that when clicked will launch the mobile application) and OFFLINE (return a QR code that can be scanned by the mobile application).  If no values are specified in the list then activation types are not updated.
     * @type {Array<string>}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'activationTypes'?: Array<EntrustSTAuthenticatorSettingsActivationTypesEnum>;
    /**
     * A boolean value that specifies whether device biometric is allowed. Default is true.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'allowDeviceBiometric'?: boolean;
    /**
     * A flag indicating if the Mobile soft token can be activated on a rooted device. Default is false.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'allowUnsecureDevice'?: boolean;
    /**
     * The package name of the custom Android application.
     * @type {string}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'appVerificationAndroidPackageName'?: string;
    /**
     * The bundle id of the custom IOS application.
     * @type {string}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'appVerificationIOSBundleId'?: string;
    /**
     * The team id of the custom IOS application.
     * @type {string}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'appVerificationIOSTeamId'?: string;
    /**
     * A flag indicating if app verification is required during activation.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'appVerificationRequired'?: boolean;
    /**
     * A flag indicating if the facial recognition feature supported by the Entrust Soft Token application is allowed. The default is false.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'facialRecognitionAllowed'?: boolean;
    /**
     * The maximum number of 30 second timestamps that a result response is validated. Default is 120.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'maxResetTimeSteps'?: number;
    /**
     * The maximum number of 30 second timesteps over which a response is validated. The default is 10.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'maxTimeSteps'?: number;
    /**
     * Characters that can appear in a mutual challenge. Can contain any non-whitespace character. Default is all digits.
     * @type {string}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'mutualChallengeAlphabet'?: string;
    /**
     * A flag indicating if the Push Authentication Mutual Challenge is enabled. The default is false.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'mutualChallengeEnabled'?: boolean;
    /**
     * An integer value that specifies what percent of requests have a mutual challenge. Default is 100.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'mutualChallengeForPercentOfRequests'?: number;
    /**
     * The length of the mutual challenge. Default is 2.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'mutualChallengeLength'?: number;
    /**
     * The number of mutual challenges return in a batch. Default is 3.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'mutualChallengeSize'?: number;
    /**
     * The length of the random password generated to encrypt an activation QR code. Default is 8.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'offlineActivationPasswordLength'?: number;
    /**
     * The length of the random password generated for an online activation. Default is 16.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'onlineActivationPasswordLength'?: number;
    /**
     * The length of the OTP generated by the soft token. The default is 8.
     * @type {number}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'otpLength'?: EntrustSTAuthenticatorSettingsOtpLengthEnum;
    /**
     * A flag indicating if this token requires that a PIN be enabled on the Entrust Soft Token application. The default is true.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'pinRequired'?: boolean;
    /**
     * A flag indicating if device verification is required during activation.
     * @type {boolean}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'requireDeviceVerificationOnActivation'?: boolean;
    /**
     * Specifies the URL scheme used in soft token activation URLs. It should specify the URL scheme associated with the mobile application to be used. This value should only be changed if you are using your own mobile application written using the Entrust ST SDK.  The default value is igmobileotp which corresponds to the Entrust ST application.
     * @type {string}
     * @memberof EntrustSTAuthenticatorSettings
     */
    'scheme'?: string;
}
export declare const EntrustSTAuthenticatorSettingsActivationTypesEnum: {
    readonly Classic: "CLASSIC";
    readonly Online: "ONLINE";
    readonly Offline: "OFFLINE";
};
export type EntrustSTAuthenticatorSettingsActivationTypesEnum = typeof EntrustSTAuthenticatorSettingsActivationTypesEnum[keyof typeof EntrustSTAuthenticatorSettingsActivationTypesEnum];
export declare const EntrustSTAuthenticatorSettingsOtpLengthEnum: {
    readonly NUMBER_6: 6;
    readonly NUMBER_8: 8;
};
export type EntrustSTAuthenticatorSettingsOtpLengthEnum = typeof EntrustSTAuthenticatorSettingsOtpLengthEnum[keyof typeof EntrustSTAuthenticatorSettingsOtpLengthEnum];
/**
 * Object containing information about errors reported by services.
 * @export
 * @interface ErrorInfo
 */
export interface ErrorInfo {
    /**
     * Error Codes specific to cause of failure.
     * @type {string}
     * @memberof ErrorInfo
     */
    'errorCode'?: string;
    /**
     * Additional Error Message describing the error.
     * @type {string}
     * @memberof ErrorInfo
     */
    'errorMessage'?: string;
    /**
     * Optional additional error information.
     * @type {Array<object>}
     * @memberof ErrorInfo
     */
    'parameters'?: Array<object>;
}
/**
 * Information stored for an expected location.
 * @export
 * @interface ExpectedLocation
 */
export interface ExpectedLocation {
    /**
     * The city name--always returned in upper-case.
     * @type {string}
     * @memberof ExpectedLocation
     */
    'city'?: string;
    /**
     * A two-character (alpha-2) ISO 3166-1  country code.
     * @type {string}
     * @memberof ExpectedLocation
     */
    'countryCode'?: string;
    /**
     * The UUID of this expected location.
     * @type {string}
     * @memberof ExpectedLocation
     */
    'id'?: string;
    /**
     * The IPv4 Address.
     * @type {string}
     * @memberof ExpectedLocation
     */
    'ipAddress'?: string;
    /**
     * The ISP name--always returned in upper-case.
     * @type {string}
     * @memberof ExpectedLocation
     */
    'isp'?: string;
    /**
     * Whether the IP provided is a private IP Address.  The value is ignored when adding an ExpectedLocation. It is returned when getting ExpectedLocations if the location has an IP address defined
     * @type {boolean}
     * @memberof ExpectedLocation
     */
    'privateIpAddress'?: boolean;
}
/**
 *
 * @export
 * @interface ExportCertificate
 */
export interface ExportCertificate {
    /**
     * Certificate information as a PEM encoded value.
     * @type {string}
     * @memberof ExportCertificate
     */
    'certificate'?: string;
}
/**
 * List of allowed relying party IDs for passkey/FIDO2 registration.
 * @export
 * @interface FIDOAllowedRpid
 */
export interface FIDOAllowedRpid {
    /**
     * Collection of different android app origin configurations.
     * @type {Array<FIDOAndroidOriginSettings>}
     * @memberof FIDOAllowedRpid
     */
    'androidOrigins'?: Array<FIDOAndroidOriginSettings>;
    /**
     * Allowed FIDO relying party ID hostname value. This value can not contain a port.
     * @type {string}
     * @memberof FIDOAllowedRpid
     */
    'hostname': string;
    /**
     * Collection of different ios app association configurations.
     * @type {Array<FIDOIosOriginSettings>}
     * @memberof FIDOAllowedRpid
     */
    'iosOrigins'?: Array<FIDOIosOriginSettings>;
    /**
     * Determines if subdomains are allowed for this relying party ID.
     * @type {boolean}
     * @memberof FIDOAllowedRpid
     */
    'subdomainsAllowed'?: boolean;
    /**
     * Determines if the relying party ID is system defined.
     * @type {boolean}
     * @memberof FIDOAllowedRpid
     */
    'systemDefined': boolean;
}
/**
 * Represents the structure of \'assetlinks.json\' Android association file.
 * @export
 * @interface FIDOAndroidAssetLinks
 */
export interface FIDOAndroidAssetLinks {
    /**
     * List of relationships describing the association permissions between the website and the app.
     * @type {Array<string>}
     * @memberof FIDOAndroidAssetLinks
     */
    'relation': Array<string>;
    /**
     *
     * @type {FIDOAndroidAssetLinksTargets}
     * @memberof FIDOAndroidAssetLinks
     */
    'target': FIDOAndroidAssetLinksTargets;
}
/**
 * Represents the \'target\' field structure of assetlinks.json file that contains namespace, package name and  certificate fingerprints.
 * @export
 * @interface FIDOAndroidAssetLinksTargets
 */
export interface FIDOAndroidAssetLinksTargets {
    /**
     * The namespace string for the association.
     * @type {string}
     * @memberof FIDOAndroidAssetLinksTargets
     */
    'namespace': string;
    /**
     * The package name of the Android app.
     * @type {string}
     * @memberof FIDOAndroidAssetLinksTargets
     */
    'package_name'?: string;
    /**
     * The list of SHA-256 certificate fingerprints for the signing certificates.
     * @type {Array<string>}
     * @memberof FIDOAndroidAssetLinksTargets
     */
    'sha256_cert_fingerprints'?: Array<string>;
}
/**
 * Represents the android origin configurations for Passkey/FIDO authenticator settings.
 * @export
 * @interface FIDOAndroidOriginSettings
 */
export interface FIDOAndroidOriginSettings {
    /**
     * An array of SHA-256 fingerprints of the app\'s signing certificate(s).
     * @type {Array<string>}
     * @memberof FIDOAndroidOriginSettings
     */
    'fingerprints': Array<string>;
    /**
     * Specifies the android app\'s package name.
     * @type {string}
     * @memberof FIDOAndroidOriginSettings
     */
    'packageName': string;
}
/**
 * Represents the structure of \'apple-app-site-association\' Apple association file.
 * @export
 * @interface FIDOAppleAppSiteAssociation
 */
export interface FIDOAppleAppSiteAssociation {
    /**
     *
     * @type {FIDOAppleAppSiteAssociationWebcredentials}
     * @memberof FIDOAppleAppSiteAssociation
     */
    'webcredentials': FIDOAppleAppSiteAssociationWebcredentials;
}
/**
 * Defines the apps that can use passkey for website credentials.
 * @export
 * @interface FIDOAppleAppSiteAssociationWebcredentials
 */
export interface FIDOAppleAppSiteAssociationWebcredentials {
    /**
     * A list of app IDs that can use passkey for the associated website.
     * @type {Array<string>}
     * @memberof FIDOAppleAppSiteAssociationWebcredentials
     */
    'apps': Array<string>;
}
/**
 * Represents the request body for downloading association file APIs for Android and Apple.
 * @export
 * @interface FIDOAssociationFileRequest
 */
export interface FIDOAssociationFileRequest {
    /**
     * The relying party ID that hosts the association file.
     * @type {string}
     * @memberof FIDOAssociationFileRequest
     */
    'rpId': string;
}
/**
 * Settings that control the behavior of FIDO authentication.
 * @export
 * @interface FIDOAuthenticatorSettings
 */
export interface FIDOAuthenticatorSettings {
    /**
     * A boolean value indicating if synced passkey/FIDO2 tokens should be blocked.
     * @type {boolean}
     * @memberof FIDOAuthenticatorSettings
     */
    'backupEligibleCheck': boolean;
    /**
     * List of allowed relying party IDs for passkey/FIDO2 registration.
     * @type {Array<FIDOAllowedRpid>}
     * @memberof FIDOAuthenticatorSettings
     */
    'fidoRelyingPartyAllowlist': Array<FIDOAllowedRpid>;
    /**
     * A boolean value indicating if passkey/FIDO2 relying party allow list is enabled.
     * @type {boolean}
     * @memberof FIDOAuthenticatorSettings
     */
    'fidoRelyingPartyAllowlistEnabled': boolean;
    /**
     * The minimum authentication level required to use FIDO self user actions through the Authentication API.
     * @type {string}
     * @memberof FIDOAuthenticatorSettings
     */
    'passkeyAuthenticatorLevel': string;
    /**
     * Should the token be embedded on the device or stored externally?
     * @type {string}
     * @memberof FIDOAuthenticatorSettings
     */
    'registrationAuthenticatorAttachment': FIDOAuthenticatorSettingsRegistrationAuthenticatorAttachmentEnum;
    /**
     * Should the User ID be stored on the Passkey/FIDO2 token?
     * @type {string}
     * @memberof FIDOAuthenticatorSettings
     */
    'registrationRequireResidentKey': FIDOAuthenticatorSettingsRegistrationRequireResidentKeyEnum;
    /**
     * Should the token perform user verification?
     * @type {string}
     * @memberof FIDOAuthenticatorSettings
     */
    'registrationUserVerification': FIDOAuthenticatorSettingsRegistrationUserVerificationEnum;
    /**
     * The time in seconds that a client will wait for the FIDO token to respond. Value must be between 5 and 300.
     * @type {number}
     * @memberof FIDOAuthenticatorSettings
     */
    'timeout': number;
    /**
     * A boolean value indicating if user presence is checked by the passkey/FIDO2 token.
     * @type {boolean}
     * @memberof FIDOAuthenticatorSettings
     */
    'userPresentCheck': boolean;
}
export declare const FIDOAuthenticatorSettingsRegistrationAuthenticatorAttachmentEnum: {
    readonly Either: "EITHER";
    readonly Platform: "PLATFORM";
    readonly CrossPlatform: "CROSS_PLATFORM";
};
export type FIDOAuthenticatorSettingsRegistrationAuthenticatorAttachmentEnum = typeof FIDOAuthenticatorSettingsRegistrationAuthenticatorAttachmentEnum[keyof typeof FIDOAuthenticatorSettingsRegistrationAuthenticatorAttachmentEnum];
export declare const FIDOAuthenticatorSettingsRegistrationRequireResidentKeyEnum: {
    readonly Discouraged: "DISCOURAGED";
    readonly Preferred: "PREFERRED";
    readonly Required: "REQUIRED";
};
export type FIDOAuthenticatorSettingsRegistrationRequireResidentKeyEnum = typeof FIDOAuthenticatorSettingsRegistrationRequireResidentKeyEnum[keyof typeof FIDOAuthenticatorSettingsRegistrationRequireResidentKeyEnum];
export declare const FIDOAuthenticatorSettingsRegistrationUserVerificationEnum: {
    readonly Discouraged: "DISCOURAGED";
    readonly Preferred: "PREFERRED";
    readonly Required: "REQUIRED";
};
export type FIDOAuthenticatorSettingsRegistrationUserVerificationEnum = typeof FIDOAuthenticatorSettingsRegistrationUserVerificationEnum[keyof typeof FIDOAuthenticatorSettingsRegistrationUserVerificationEnum];
/**
 * Settings that set the behavior of FIDO authentication.
 * @export
 * @interface FIDOAuthenticatorSettingsParms
 */
export interface FIDOAuthenticatorSettingsParms {
    /**
     * A boolean value indicating if synced passkey/FIDO2 tokens should be blocked.
     * @type {boolean}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'backupEligibleCheck'?: boolean;
    /**
     * List of allowed relying party IDs for passkey/FIDO2 registration.
     * @type {Array<FIDOAllowedRpid>}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'fidoRelyingPartyAllowlist'?: Array<FIDOAllowedRpid>;
    /**
     * A boolean value indicating if passkey/FIDO2 relying party allow list is enabled.
     * @type {boolean}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'fidoRelyingPartyAllowlistEnabled'?: boolean;
    /**
     * The minimum authentication level required to use FIDO self user actions through the Authentication API.
     * @type {string}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'passkeyAuthenticatorLevel'?: string;
    /**
     * Should the token be embedded on the device or stored externally?
     * @type {string}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'registrationAuthenticatorAttachment'?: FIDOAuthenticatorSettingsParmsRegistrationAuthenticatorAttachmentEnum;
    /**
     * Should the User ID be stored on the Passkey/FIDO2 token?
     * @type {string}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'registrationRequireResidentKey'?: FIDOAuthenticatorSettingsParmsRegistrationRequireResidentKeyEnum;
    /**
     * Should the token perform user verification?
     * @type {string}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'registrationUserVerification'?: FIDOAuthenticatorSettingsParmsRegistrationUserVerificationEnum;
    /**
     * The time in seconds that a client will wait for the FIDO token to respond. Value must be between 5 and 300.
     * @type {number}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'timeout'?: number;
    /**
     * A boolean value indicating if user presence is checked by the passkey/FIDO2 token.
     * @type {boolean}
     * @memberof FIDOAuthenticatorSettingsParms
     */
    'userPresentCheck'?: boolean;
}
export declare const FIDOAuthenticatorSettingsParmsRegistrationAuthenticatorAttachmentEnum: {
    readonly Either: "EITHER";
    readonly Platform: "PLATFORM";
    readonly CrossPlatform: "CROSS_PLATFORM";
};
export type FIDOAuthenticatorSettingsParmsRegistrationAuthenticatorAttachmentEnum = typeof FIDOAuthenticatorSettingsParmsRegistrationAuthenticatorAttachmentEnum[keyof typeof FIDOAuthenticatorSettingsParmsRegistrationAuthenticatorAttachmentEnum];
export declare const FIDOAuthenticatorSettingsParmsRegistrationRequireResidentKeyEnum: {
    readonly Discouraged: "DISCOURAGED";
    readonly Preferred: "PREFERRED";
    readonly Required: "REQUIRED";
};
export type FIDOAuthenticatorSettingsParmsRegistrationRequireResidentKeyEnum = typeof FIDOAuthenticatorSettingsParmsRegistrationRequireResidentKeyEnum[keyof typeof FIDOAuthenticatorSettingsParmsRegistrationRequireResidentKeyEnum];
export declare const FIDOAuthenticatorSettingsParmsRegistrationUserVerificationEnum: {
    readonly Discouraged: "DISCOURAGED";
    readonly Preferred: "PREFERRED";
    readonly Required: "REQUIRED";
};
export type FIDOAuthenticatorSettingsParmsRegistrationUserVerificationEnum = typeof FIDOAuthenticatorSettingsParmsRegistrationUserVerificationEnum[keyof typeof FIDOAuthenticatorSettingsParmsRegistrationUserVerificationEnum];
/**
 * Represents the iOS origin configurations for Passkey/FIDO authenticator settings.
 * @export
 * @interface FIDOIosOriginSettings
 */
export interface FIDOIosOriginSettings {
    /**
     * Specifies the Apple developer Team ID.
     * @type {string}
     * @memberof FIDOIosOriginSettings
     */
    'appIdentifierPrefix': string;
    /**
     * Application\'s unique bundle ID to associate with the server.
     * @type {string}
     * @memberof FIDOIosOriginSettings
     */
    'bundleIdentifier': string;
}
/**
 * A FIDORegisterChallenge defines the information returned when a user starts to register a FIDO token.
 * @export
 * @interface FIDORegisterChallenge
 */
export interface FIDORegisterChallenge {
    /**
     * The registration challenge generated by Identity as a Service.  This is a base-64 encoded value.
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'challenge'?: string;
    /**
     * The IDs of FIDO tokens already registered to this user.  These values are base-64 encoded.
     * @type {Array<string>}
     * @memberof FIDORegisterChallenge
     */
    'registeredCredentials'?: Array<string>;
    /**
     * The names of FIDO tokens already registered to this user.
     * @type {Array<string>}
     * @memberof FIDORegisterChallenge
     */
    'registeredCredentialsNames'?: Array<string>;
    /**
     * Should the token be embedded on the device or stored externally?
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'registrationAuthenticatorAttachment'?: FIDORegisterChallengeRegistrationAuthenticatorAttachmentEnum;
    /**
     * Should the User ID be stored on the Passkey/FIDO2 token?
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'registrationRequireResidentKey'?: FIDORegisterChallengeRegistrationRequireResidentKeyEnum;
    /**
     * Should the token perform user verification?
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'registrationUserVerification'?: FIDORegisterChallengeRegistrationUserVerificationEnum;
    /**
     * The name of this relying party.  This is the name of the Identity as a Service account.
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'rpName'?: string;
    /**
     * The time in seconds that the client will wait for the FIDO token to respond.
     * @type {number}
     * @memberof FIDORegisterChallenge
     */
    'timeout'?: number;
    /**
     * The display name of this user. It will be \'firstname lastname\' of the user
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'userDisplayName'?: string;
    /**
     * The id of this user. It will be UUID of the user base-64 encoded.
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'userId'?: string;
    /**
     * The name of this user. It will be the userId of the user.
     * @type {string}
     * @memberof FIDORegisterChallenge
     */
    'userName'?: string;
}
export declare const FIDORegisterChallengeRegistrationAuthenticatorAttachmentEnum: {
    readonly Either: "EITHER";
    readonly Platform: "PLATFORM";
    readonly CrossPlatform: "CROSS_PLATFORM";
};
export type FIDORegisterChallengeRegistrationAuthenticatorAttachmentEnum = typeof FIDORegisterChallengeRegistrationAuthenticatorAttachmentEnum[keyof typeof FIDORegisterChallengeRegistrationAuthenticatorAttachmentEnum];
export declare const FIDORegisterChallengeRegistrationRequireResidentKeyEnum: {
    readonly Discouraged: "DISCOURAGED";
    readonly Preferred: "PREFERRED";
    readonly Required: "REQUIRED";
};
export type FIDORegisterChallengeRegistrationRequireResidentKeyEnum = typeof FIDORegisterChallengeRegistrationRequireResidentKeyEnum[keyof typeof FIDORegisterChallengeRegistrationRequireResidentKeyEnum];
export declare const FIDORegisterChallengeRegistrationUserVerificationEnum: {
    readonly Discouraged: "DISCOURAGED";
    readonly Preferred: "PREFERRED";
    readonly Required: "REQUIRED";
};
export type FIDORegisterChallengeRegistrationUserVerificationEnum = typeof FIDORegisterChallengeRegistrationUserVerificationEnum[keyof typeof FIDORegisterChallengeRegistrationUserVerificationEnum];
/**
 * FIDORegisterResponse defines the information returned from a FIDO token to complete registration.
 * @export
 * @interface FIDORegisterResponse
 */
export interface FIDORegisterResponse {
    /**
     * The FIDO attestationObject data returned from the FIDO token.  This is a base-64 encoded value.
     * @type {string}
     * @memberof FIDORegisterResponse
     */
    'attestationObject'?: string;
    /**
     * The FIDO clientData returned from the FIDO token.  This is a base-64 encoded value.
     * @type {string}
     * @memberof FIDORegisterResponse
     */
    'clientDataJSON'?: string;
    /**
     * The name for the new FIDO token.
     * @type {string}
     * @memberof FIDORegisterResponse
     */
    'name'?: string;
    /**
     * Flag indicating if the userId was stored on the registered FIDO2 token.  Defaults to false if not set.
     * @type {boolean}
     * @memberof FIDORegisterResponse
     */
    'userIdStored'?: boolean;
}
/**
 * A FIDOToken defines the information returned about a FIDO Token.
 * @export
 * @interface FIDOToken
 */
export interface FIDOToken {
    /**
     * Administration actions that can be performed on this FIDO token.
     * @type {Array<string>}
     * @memberof FIDOToken
     */
    'allowedActions'?: Array<FIDOTokenAllowedActionsEnum>;
    /**
     * The date on which the FIDO token was created.
     * @type {string}
     * @memberof FIDOToken
     */
    'createDate'?: string;
    /**
     * The unique UUID assigned to the fido token when it is registered.
     * @type {string}
     * @memberof FIDOToken
     */
    'id'?: string;
    /**
     * The date on which this FIDO token was last used for authentication. This value will be null if the FIDO token has never been used.
     * @type {string}
     * @memberof FIDOToken
     */
    'lastUsedDate'?: string;
    /**
     * The name of this FIDO token.
     * @type {string}
     * @memberof FIDOToken
     */
    'name'?: string;
    /**
     * The origin of where the FIDO token was generated.
     * @type {string}
     * @memberof FIDOToken
     */
    'origin'?: string;
    /**
     * The relying party ID of where the FIDO token was generated.
     * @type {string}
     * @memberof FIDOToken
     */
    'relyingPartyId'?: string;
    /**
     * The state of this FIDO token.  Only FIDO tokens in the ACTIVE state can be used for authentication.
     * @type {string}
     * @memberof FIDOToken
     */
    'state'?: FIDOTokenStateEnum;
    /**
     * The user Id of the user who owns this FIDO token.
     * @type {string}
     * @memberof FIDOToken
     */
    'userId'?: string;
    /**
     * Indicates if the userId was stored on the FIDO token.
     * @type {boolean}
     * @memberof FIDOToken
     */
    'userIdStored'?: boolean;
    /**
     * The UUID of the user who owns this FIDO token.
     * @type {string}
     * @memberof FIDOToken
     */
    'userUUID'?: string;
}
export declare const FIDOTokenAllowedActionsEnum: {
    readonly Delete: "DELETE";
    readonly Enable: "ENABLE";
    readonly Disable: "DISABLE";
    readonly Rename: "RENAME";
};
export type FIDOTokenAllowedActionsEnum = typeof FIDOTokenAllowedActionsEnum[keyof typeof FIDOTokenAllowedActionsEnum];
export declare const FIDOTokenStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type FIDOTokenStateEnum = typeof FIDOTokenStateEnum[keyof typeof FIDOTokenStateEnum];
/**
 * The parameters specifying what is to be changed.
 * @export
 * @interface FIDOTokenParms
 */
export interface FIDOTokenParms {
    /**
     * The name of this FIDO token.
     * @type {string}
     * @memberof FIDOTokenParms
     */
    'name'?: string;
    /**
     * The state of this FIDO token.  Only FIDO tokens in the ACTIVE state can be used for authentication.
     * @type {string}
     * @memberof FIDOTokenParms
     */
    'state'?: FIDOTokenParmsStateEnum;
}
export declare const FIDOTokenParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type FIDOTokenParmsStateEnum = typeof FIDOTokenParmsStateEnum[keyof typeof FIDOTokenParmsStateEnum];
/**
 * New settings.
 * @export
 * @interface FaceAccountSettings
 */
export interface FaceAccountSettings {
    /**
     * The API key to use for verification.
     * @type {string}
     * @memberof FaceAccountSettings
     */
    'apiKey': string;
    /**
     * The UUID of the Face settings.
     * @type {string}
     * @memberof FaceAccountSettings
     */
    'id'?: string;
    /**
     * Region the workflow runs are created for.
     * @type {string}
     * @memberof FaceAccountSettings
     */
    'region': FaceAccountSettingsRegionEnum;
    /**
     * The token sent by the webhook to verify contents.
     * @type {string}
     * @memberof FaceAccountSettings
     */
    'webhookToken': string;
}
export declare const FaceAccountSettingsRegionEnum: {
    readonly Eu: "EU";
    readonly Us: "US";
    readonly Ca: "CA";
};
export type FaceAccountSettingsRegionEnum = typeof FaceAccountSettingsRegionEnum[keyof typeof FaceAccountSettingsRegionEnum];
/**
 * Face Biometric information stored for a user.
 * @export
 * @interface FaceAuthenticator
 */
export interface FaceAuthenticator {
    /**
     * The ID of the applicant in Onfido.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'applicantId'?: string;
    /**
     * Date the authenticator was created.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'created'?: string;
    /**
     * Date the authenticator will expire.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'expiry'?: string;
    /**
     * The ID of the Face Biometric.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'id'?: string;
    /**
     * Date the authenticator was last used.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'lastUsed'?: string;
    /**
     * If the authenticator was registered on mobile.
     * @type {boolean}
     * @memberof FaceAuthenticator
     */
    'mobile'?: boolean;
    /**
     * The mobile device platform on which a Face Biometric was registered.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'platform'?: string;
    /**
     * The serial number of the Face Biometric.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'serialNumber'?: string;
    /**
     * The status of the authenticator.
     * @type {string}
     * @memberof FaceAuthenticator
     */
    'status'?: FaceAuthenticatorStatusEnum;
}
export declare const FaceAuthenticatorStatusEnum: {
    readonly Activating: "ACTIVATING";
    readonly Active: "ACTIVE";
    readonly Failed: "FAILED";
    readonly Expired: "EXPIRED";
    readonly Review: "REVIEW";
    readonly Disabled: "DISABLED";
    readonly New: "NEW";
};
export type FaceAuthenticatorStatusEnum = typeof FaceAuthenticatorStatusEnum[keyof typeof FaceAuthenticatorStatusEnum];
/**
 * Face Biometric Parameters for a user.
 * @export
 * @interface FaceCreateParms
 */
export interface FaceCreateParms {
    /**
     * The ID of the applicant that was created in Onfido.
     * @type {string}
     * @memberof FaceCreateParms
     */
    'applicantId'?: string;
    /**
     * Optionally send an activation email if adding a mobile authenticator.
     * @type {boolean}
     * @memberof FaceCreateParms
     */
    'deliverActivationEmail'?: boolean;
    /**
     * Optionally return the QR code and activation URL for registration if adding a mobile authenticator.
     * @type {boolean}
     * @memberof FaceCreateParms
     */
    'returnQRCode'?: boolean;
    /**
     * The workflow run ID used to register the user in Onfido.
     * @type {string}
     * @memberof FaceCreateParms
     */
    'workflowRunId'?: string;
}
/**
 * Parameters returned from the create Face Biometric operation.
 * @export
 * @interface FaceCreateResponse
 */
export interface FaceCreateResponse {
    /**
     * The QR code used to register the mobile Face Biometric.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'activationQRCode'?: string;
    /**
     * The activation URL used to register the mobile Face Biometric.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'activationUrl'?: string;
    /**
     * The ID of the applicant in Onfido.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'applicantId'?: string;
    /**
     * Date the authenticator was created.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'created'?: string;
    /**
     * Date the authenticator will expire.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'expiry'?: string;
    /**
     * The ID of the Face Biometric.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'id'?: string;
    /**
     * If the authenticator was created for mobile.
     * @type {boolean}
     * @memberof FaceCreateResponse
     */
    'mobile'?: boolean;
    /**
     * The serial number of the Face Biometric.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'serialNumber'?: string;
    /**
     * The status of the authenticator.
     * @type {string}
     * @memberof FaceCreateResponse
     */
    'status'?: FaceCreateResponseStatusEnum;
}
export declare const FaceCreateResponseStatusEnum: {
    readonly Activating: "ACTIVATING";
    readonly Active: "ACTIVE";
    readonly Failed: "FAILED";
    readonly Expired: "EXPIRED";
    readonly Review: "REVIEW";
    readonly Disabled: "DISABLED";
    readonly New: "NEW";
};
export type FaceCreateResponseStatusEnum = typeof FaceCreateResponseStatusEnum[keyof typeof FaceCreateResponseStatusEnum];
/**
 * Face Biometric Parameters for a user.
 * @export
 * @interface FaceUpdateParms
 */
export interface FaceUpdateParms {
    /**
     * Date the authenticator will expire.
     * @type {string}
     * @memberof FaceUpdateParms
     */
    'expiry'?: string;
    /**
     * The ID of the authenticator to update.
     * @type {string}
     * @memberof FaceUpdateParms
     */
    'id'?: string;
    /**
     * The status of the authenticator.
     * @type {string}
     * @memberof FaceUpdateParms
     */
    'status'?: FaceUpdateParmsStatusEnum;
}
export declare const FaceUpdateParmsStatusEnum: {
    readonly Activating: "ACTIVATING";
    readonly Active: "ACTIVE";
    readonly Failed: "FAILED";
    readonly Expired: "EXPIRED";
    readonly Review: "REVIEW";
    readonly Disabled: "DISABLED";
    readonly New: "NEW";
};
export type FaceUpdateParmsStatusEnum = typeof FaceUpdateParmsStatusEnum[keyof typeof FaceUpdateParmsStatusEnum];
/**
 * Parameters passed when setting the Issuance entitlements of a tenant.
 * @export
 * @interface FlashPassParms
 */
export interface FlashPassParms {
    /**
     * The number of FlashPass pass claims allowed during the Trial period.
     * @type {number}
     * @memberof FlashPassParms
     */
    'quantity'?: FlashPassParmsQuantityEnum;
}
export declare const FlashPassParmsQuantityEnum: {
    readonly NUMBER_25: 25;
    readonly NUMBER_100: 100;
};
export type FlashPassParmsQuantityEnum = typeof FlashPassParmsQuantityEnum[keyof typeof FlashPassParmsQuantityEnum];
/**
 * FleetManagement entitlements of a tenant.
 * @export
 * @interface FleetManagement
 */
export interface FleetManagement {
    /**
     * Add on column to store fleetManagementOptIn flag
     * @type {string}
     * @memberof FleetManagement
     */
    'addOn'?: string;
    /**
     * The entitlements consumed since start date during the entitlement period.
     * @type {number}
     * @memberof FleetManagement
     */
    'consumed'?: number;
    /**
     * The date when the entitlement will end.
     * @type {string}
     * @memberof FleetManagement
     */
    'endDate'?: string;
    /**
     * The number of FlashPass claims allowed during the period.
     * @type {number}
     * @memberof FleetManagement
     */
    'quantity'?: number;
    /**
     * The date when the entitlement starts.
     * @type {string}
     * @memberof FleetManagement
     */
    'startDate'?: string;
}
/**
 * New general settings.
 * @export
 * @interface GeneralSettings
 */
export interface GeneralSettings {
    /**
     * The amount of time in seconds before an authenticated user needs to re-authenticate. Default is 900.
     * @type {number}
     * @memberof GeneralSettings
     */
    'authenticationSessionLifetime'?: number;
    /**
     * A setting that indicates the type of token automatically created for the user when it is created. Choices are NONE, ENTRUST_SOFT_TOKEN or GOOGLE_AUTHENTICATOR. Default is ENTRUST_SOFT_TOKEN.
     * @type {string}
     * @memberof GeneralSettings
     */
    'authenticatorActivationType'?: GeneralSettingsAuthenticatorActivationTypeEnum;
    /**
     * A flag that indicates if CORS is enabled for this account.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'corsEnabled'?: boolean;
    /**
     * A list of origins that cross-origin requests are allowed from.
     * @type {Array<CorsOrigin>}
     * @memberof GeneralSettings
     */
    'corsOrigins'?: Array<CorsOrigin>;
    /**
     * A flag that indicates if a grid card is created for the user when it is created.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'defaultGrid'?: boolean;
    /**
     * A flag that indicates whether to automatically enroll a smart credential for the user when it is created. Default is false.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'defaultMobileSmartCredential'?: boolean;
    /**
     * A flag that indicates if a default password is created for the user when it is created. Default is true.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'defaultPassword'?: boolean;
    /**
     * The amount of time in seconds before a dynamic linking transaction expired. Default is 300.
     * @type {number}
     * @memberof GeneralSettings
     */
    'dynamicLinkingTransactionLifetime'?: number;
    /**
     * Indicates whether to enable Enhanced Authentication Details or not.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'enableEnhancedAuthenticationDetails'?: boolean;
    /**
     * The amount of time in seconds that administrators can grant for users.
     * @type {number}
     * @memberof GeneralSettings
     */
    'inactivityGracePeriod'?: number;
    /**
     * The number of failed authentications before a user is locked out. Default is 5.
     * @type {number}
     * @memberof GeneralSettings
     */
    'lockoutCount'?: number;
    /**
     * The amount of time in seconds before a user lockout expires.  A value of 0 means the lockout never expires. Minimum is 0. Default is 0.
     * @type {number}
     * @memberof GeneralSettings
     */
    'lockoutLifetime'?: number;
    /**
     * The lockout mode to use for your IntelliTrust account. The AUTHENTICATOR lockout mode means a per-authenticator lockout will be enforced. When a user locks an authenticator they can no longer use that authenticator but can still use an alternative authenticator to log in. The USER lockout mode will lock out a user if any of their authenticators have been locked.
     * @type {string}
     * @memberof GeneralSettings
     */
    'lockoutMode'?: GeneralSettingsLockoutModeEnum;
    /**
     * Indicates whether to block users who have not authenticated for a time being.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'manageInactiveUsers'?: boolean;
    /**
     * The maximum number of FIDO tokens that a user can have.  Default is 5.
     * @type {number}
     * @memberof GeneralSettings
     */
    'maxFIDOTokensPerUser'?: number;
    /**
     * The maximum number of Face Biometrics that a user can have. Default is 5.
     * @type {number}
     * @memberof GeneralSettings
     */
    'maxFacesPerUser'?: number;
    /**
     * The maximum number of grids that a user can have.  Default is 5.
     * @type {number}
     * @memberof GeneralSettings
     */
    'maxGridsPerUser'?: number;
    /**
     * Maximum number of queued push transactions. Default is 1.
     * @type {number}
     * @memberof GeneralSettings
     */
    'maxNumberOfPushTransactionsQueued'?: number;
    /**
     * The maximum number of smart credentials that a user can have.  Default is 3.
     * @type {number}
     * @memberof GeneralSettings
     */
    'maxSmartCredentialsPerUser'?: number;
    /**
     * The maximum number of tokens that a user can have.  Default is 5.
     * @type {number}
     * @memberof GeneralSettings
     */
    'maxTokensPerUser'?: number;
    /**
     * The amount of time in seconds before a push authentication requires expires if a response is not received from the mobile application.  Default is 300.
     * @type {number}
     * @memberof GeneralSettings
     */
    'pushAuthenticationLifetime'?: number;
    /**
     * The amount of time in seconds that a push transaction can be queued.  Default is 60.
     * @type {number}
     * @memberof GeneralSettings
     */
    'pushTransactionLifetime'?: number;
    /**
     * The user registration period in days. Default is 0. Deprecated: use the SelfServiceSettings registrationEnabled attribute.
     * @type {number}
     * @memberof GeneralSettings
     * @deprecated
     */
    'registrationPeriod'?: number;
    /**
     * Indicates whether the Get Started wizard should be shown or not.
     * @type {boolean}
     * @memberof GeneralSettings
     */
    'showOnboardingWizard'?: boolean;
    /**
     * The UUID of the Smart Credential Definition to use when a user enrolls a Smart Credential.
     * @type {string}
     * @memberof GeneralSettings
     */
    'smartCredentialDefn'?: string;
    /**
     * The amount of time in seconds for a user to be inactive.
     * @type {number}
     * @memberof GeneralSettings
     */
    'userInactivityThreshold'?: number;
}
export declare const GeneralSettingsAuthenticatorActivationTypeEnum: {
    readonly None: "NONE";
    readonly EntrustSoftToken: "ENTRUST_SOFT_TOKEN";
    readonly GoogleAuthenticator: "GOOGLE_AUTHENTICATOR";
};
export type GeneralSettingsAuthenticatorActivationTypeEnum = typeof GeneralSettingsAuthenticatorActivationTypeEnum[keyof typeof GeneralSettingsAuthenticatorActivationTypeEnum];
export declare const GeneralSettingsLockoutModeEnum: {
    readonly Authenticator: "AUTHENTICATOR";
    readonly User: "USER";
};
export type GeneralSettingsLockoutModeEnum = typeof GeneralSettingsLockoutModeEnum[keyof typeof GeneralSettingsLockoutModeEnum];
/**
 * New Google Authenticator settings.
 * @export
 * @interface GoogleAuthenticatorSettings
 */
export interface GoogleAuthenticatorSettings {
    /**
     * The maximum number of 30 second timestamps that a result response is validated. Default is 120.
     * @type {number}
     * @memberof GoogleAuthenticatorSettings
     */
    'maxResetTimeSteps'?: number;
    /**
     * The maximum number of 30 second timesteps over which a response is validated. The default is 10.
     * @type {number}
     * @memberof GoogleAuthenticatorSettings
     */
    'maxTimeSteps'?: number;
}
/**
 * A Grid defines the information returned about a Grid.
 * @export
 * @interface Grid
 */
export interface Grid {
    /**
     * A list of what actions are currently allowed for this grid.
     * @type {Array<string>}
     * @memberof Grid
     */
    'allowedActions'?: Array<GridAllowedActionsEnum>;
    /**
     * For unassigned grids which were assigned to the user, the date on which the grid was assigned.
     * @type {string}
     * @memberof Grid
     */
    'assignDate'?: string;
    /**
     * The date on which the grid was created.
     * @type {string}
     * @memberof Grid
     */
    'createDate'?: string;
    /**
     * A flag indicating if this grid is currently expired.
     * @type {boolean}
     * @memberof Grid
     */
    'expired'?: boolean;
    /**
     * If the grid policy defines an expiry date, the date on which this grid will expire. Expired grids cannot be used for authentication.
     * @type {string}
     * @memberof Grid
     */
    'expiryDate'?: string;
    /**
     * The grid contents of this grid.  Only administrators with the GRIDCONTENTS:VIEW permission will receive this value.
     * @type {Array<Array<string>>}
     * @memberof Grid
     */
    'gridContents'?: Array<Array<string>>;
    /**
     * The UUIDs of groups to which this grid belongs.  This value is only used for unassigned grids. Only groups to which the current administrator has access will be returned.
     * @type {Array<string>}
     * @memberof Grid
     */
    'groups'?: Array<string>;
    /**
     * The unique UUID assigned to the grid when it is created.
     * @type {string}
     * @memberof Grid
     */
    'id'?: string;
    /**
     * The date on which this grid was last used for authentication. This value will be null if the grid has never been used.
     * @type {string}
     * @memberof Grid
     */
    'lastUsedDate'?: string;
    /**
     * The unique numeric serial number assigned to the grid when it is created.
     * @type {number}
     * @memberof Grid
     */
    'serialNumber'?: number;
    /**
     * The state of this grid.  Only grids in the ACTIVE or PENDING state can be used for authentication.
     * @type {string}
     * @memberof Grid
     */
    'state'?: GridStateEnum;
    /**
     * The UUID of the user who owns this grid.  If the grid is not assigned, this value will be null.
     * @type {string}
     * @memberof Grid
     */
    'userId'?: string;
    /**
     * The user Id for this user.  If the grid is not assigned, this value will be null.
     * @type {string}
     * @memberof Grid
     */
    'userName'?: string;
}
export declare const GridAllowedActionsEnum: {
    readonly Cancel: "CANCEL";
    readonly Delete: "DELETE";
    readonly Enable: "ENABLE";
    readonly Disable: "DISABLE";
    readonly Assign: "ASSIGN";
    readonly Unassign: "UNASSIGN";
};
export type GridAllowedActionsEnum = typeof GridAllowedActionsEnum[keyof typeof GridAllowedActionsEnum];
export declare const GridStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Unassigned: "UNASSIGNED";
    readonly Pending: "PENDING";
    readonly Canceled: "CANCELED";
};
export type GridStateEnum = typeof GridStateEnum[keyof typeof GridStateEnum];
/**
 * Parameters including the user id or user alias of the user to which the grid is to be assigned.
 * @export
 * @interface GridAssignParms
 */
export interface GridAssignParms {
    /**
     *
     * @type {EmailParms}
     * @memberof GridAssignParms
     */
    'emailParms'?: EmailParms;
    /**
     * When an end user is assigning a grid to themselves, this attribute specifies a grid challenge response proving that the user has possession of the grid being assigned.
     * @type {string}
     * @memberof GridAssignParms
     */
    'response'?: string;
    /**
     * When the user to which a grid is to be assigned is known, this attribute specifies the serial number of the grid that will be assigned.
     * @type {string}
     * @memberof GridAssignParms
     */
    'serialNumber'?: string;
    /**
     * When the specified grid is known, this attribute specifies the user Id or user alias of the user to which the grid will be assigned.
     * @type {string}
     * @memberof GridAssignParms
     */
    'userId'?: string;
}
/**
 * The parameters specifying the new state of the grid.
 * @export
 * @interface GridChangeStateParms
 */
export interface GridChangeStateParms {
    /**
     * The new state of the grid must be ACTIVE, INACTIVE, or CANCELED. The existing state of the grid must be ACTIVE, INACTIVE or PENDING
     * @type {string}
     * @memberof GridChangeStateParms
     */
    'state'?: GridChangeStateParmsStateEnum;
}
export declare const GridChangeStateParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Unassigned: "UNASSIGNED";
    readonly Pending: "PENDING";
    readonly Canceled: "CANCELED";
};
export type GridChangeStateParmsStateEnum = typeof GridChangeStateParmsStateEnum[keyof typeof GridChangeStateParmsStateEnum];
/**
 * Optional parameters for the grid create operation.
 * @export
 * @interface GridCreateParms
 */
export interface GridCreateParms {
    /**
     *
     * @type {EmailParms}
     * @memberof GridCreateParms
     */
    'emailParms'?: EmailParms;
    /**
     * If provided, the given grid contents are used for the new Grid Card.  The grid contents must match the grid settings for grid size, grid cell size and cell alphabet.  The administrator must have the GRIDCONTENTS:ADD permission to set the grid contents. This argument is ignored when creating unassigned grids.
     * @type {Array<Array<string>>}
     * @memberof GridCreateParms
     */
    'gridContent'?: Array<Array<string>>;
    /**
     * When creating unassigned grids the list of UUIDs of groups to which the grids will belong.  If not specified, the grids will not belong to any groups.
     * @type {Array<string>}
     * @memberof GridCreateParms
     */
    'groups'?: Array<string>;
    /**
     * The number of grids to create when creating unassigned grids.  If not specified, it defaults to 1.
     * @type {number}
     * @memberof GridCreateParms
     */
    'numberOfGrids'?: number;
    /**
     * If provided, the given grid serial number is used for the new Grid Card.
     * @type {number}
     * @memberof GridCreateParms
     */
    'serialNumber'?: number;
    /**
     * The state (ACTIVE, INACTIVE, or PENDING) of the new grid.  If not specified, the state defaults to PENDING. This argument is ignored when creating unassigned grids.
     * @type {string}
     * @memberof GridCreateParms
     */
    'state'?: GridCreateParmsStateEnum;
}
export declare const GridCreateParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Unassigned: "UNASSIGNED";
    readonly Pending: "PENDING";
    readonly Canceled: "CANCELED";
};
export type GridCreateParmsStateEnum = typeof GridCreateParmsStateEnum[keyof typeof GridCreateParmsStateEnum];
/**
 * Parameters returned by the grid export operation.
 * @export
 * @interface GridExport
 */
export interface GridExport {
    /**
     * Grid information formatted as a base64 encoded String. Formatting options are controlled in grid authenticator settings.
     * @type {string}
     * @memberof GridExport
     */
    'content'?: string;
}
/**
 * Parameters specified what is to be changed in the grid.
 * @export
 * @interface GridParms
 */
export interface GridParms {
    /**
     * When modifying unassigned grids the list of UUIDs of groups to which the grids will belong. If an empty list is provided, the unassigned grid will not belong to any groups.
     * @type {Array<string>}
     * @memberof GridParms
     */
    'groups'?: Array<string>;
}
/**
 * Properties specifying restrictions on how many unassigned grids can be created.
 * @export
 * @interface GridProperties
 */
export interface GridProperties {
    /**
     * The maximum number of unassigned grids that can be created per request.
     * @type {number}
     * @memberof GridProperties
     */
    'maxGridGeneratePerRequest'?: number;
    /**
     * The maximum number of unassigned grids that are allowed in the system.
     * @type {number}
     * @memberof GridProperties
     */
    'maxGridTotalUnassigned'?: number;
}
/**
 * Contains paging information and a page of assigned grids.
 * @export
 * @interface GridsPage
 */
export interface GridsPage {
    /**
     *
     * @type {Paging}
     * @memberof GridsPage
     */
    'paging'?: Paging;
    /**
     * A single page from the list of GRIDs found.
     * @type {Array<Grid>}
     * @memberof GridsPage
     */
    'results': Array<Grid>;
}
/**
 * Information returned about a group.
 * @export
 * @interface Group
 */
export interface Group {
    /**
     * The attribute of this group.
     * @type {string}
     * @memberof Group
     */
    'attribute'?: string;
    /**
     * When the group was created.
     * @type {string}
     * @memberof Group
     */
    'created'?: string;
    /**
     * The externalId of this group.
     * @type {string}
     * @memberof Group
     */
    'externalId'?: string;
    /**
     * The UUID of this group.  This value is generated when the group is created.
     * @type {string}
     * @memberof Group
     */
    'id'?: string;
    /**
     * When the group was last modified.
     * @type {string}
     * @memberof Group
     */
    'lastModified'?: string;
    /**
     * The name of this group.
     * @type {string}
     * @memberof Group
     */
    'name': string;
    /**
     * The type of group indicating if this group was synchronized from a directory (LDAP_AD) or was created in Identity as a Service (MGMT_UI).
     * @type {string}
     * @memberof Group
     */
    'type'?: GroupTypeEnum;
}
export declare const GroupTypeEnum: {
    readonly LdapAd: "LDAP_AD";
    readonly MgmtUi: "MGMT_UI";
};
export type GroupTypeEnum = typeof GroupTypeEnum[keyof typeof GroupTypeEnum];
/**
 * A GroupFilter defines the information returned about a directory group filter.
 * @export
 * @interface GroupFilter
 */
export interface GroupFilter {
    /**
     * The UUID of the Directory the group filter belongs to.
     * @type {string}
     * @memberof GroupFilter
     */
    'directoryId'?: string;
    /**
     * The UUID of the group filter.
     * @type {string}
     * @memberof GroupFilter
     */
    'id'?: string;
    /**
     * The name of the group to filter on.
     * @type {string}
     * @memberof GroupFilter
     */
    'name'?: string;
}
/**
 * The externalId of the group to fetch.
 * @export
 * @interface GroupId
 */
export interface GroupId {
    /**
     * The name or externalId of a group.
     * @type {string}
     * @memberof GroupId
     */
    'id': string;
}
/**
 * Parameters including the name of the new group.
 * @export
 * @interface GroupParms
 */
export interface GroupParms {
    /**
     * The optional attribute of this group.  Specify an empty string to remove the existing value of the attribute.
     * @type {string}
     * @memberof GroupParms
     */
    'attribute'?: string;
    /**
     * The optional externalId of this group.  Specify an empty string to remove the existing value of the externalId.
     * @type {string}
     * @memberof GroupParms
     */
    'externalId'?: string;
    /**
     * The name of this group. This value is required when creating a group.
     * @type {string}
     * @memberof GroupParms
     */
    'name'?: string;
}
/**
 * Contains paging information and a page of groups.
 * @export
 * @interface GroupsPage
 */
export interface GroupsPage {
    /**
     *
     * @type {Paging}
     * @memberof GroupsPage
     */
    'paging'?: Paging;
    /**
     * A single page from the list of Groups found.
     * @type {Array<Group>}
     * @memberof GroupsPage
     */
    'results': Array<Group>;
}
/**
 * An IdentityProvider defines the information returned about an external identity provider for use with user authentication or user verification.
 * @export
 * @interface IdentityProvider
 */
export interface IdentityProvider {
    /**
     * A flag indicating if the external identity provider can be used for user authentication.
     * @type {boolean}
     * @memberof IdentityProvider
     */
    'authenticationEnabled'?: boolean;
    /**
     * The URI of the logo to display on the login button for this external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'buttonImage'?: string;
    /**
     * The unique text to display on the login button for this external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'buttonText'?: string;
    /**
     * A flag indicating if the user should be created after authenticating to the external identity provider if it doesn\'t exist. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if authenticationEnabled is true.
     * @type {boolean}
     * @memberof IdentityProvider
     */
    'createUser'?: boolean;
    /**
     * The space separated list of domains associated with the external identity provider for use with user authentication.
     * @type {string}
     * @memberof IdentityProvider
     */
    'domains'?: string;
    /**
     * The UUID of the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'id'?: string;
    /**
     * The issuer URI for the external OIDC identity provider or the issuer, or IDP Entity ID, for the external SAML identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'issuer'?: string;
    /**
     * The unique name of the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'name'?: string;
    /**
     * The type of the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'protocol'?: IdentityProviderProtocolEnum;
    /**
     * The client identifier provided by the external OIDC identity provider or the SP entity ID provided to the external SAML identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'spId'?: string;
    /**
     * The type of the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'type'?: string;
    /**
     * The verification certificate2 DN used with the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'verificationCertificate2DN'?: string;
    /**
     * The verification certificate2 expiry date used with the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'verificationCertificate2ExpiryDate'?: string;
    /**
     * The verification certificate DN used with the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'verificationCertificateDN'?: string;
    /**
     * The verification certificate expiry date used with the external identity provider.
     * @type {string}
     * @memberof IdentityProvider
     */
    'verificationCertificateExpiryDate'?: string;
    /**
     * A flag indicating if the external identity provider can be used for user verification.
     * @type {boolean}
     * @memberof IdentityProvider
     */
    'verificationEnabled'?: boolean;
}
export declare const IdentityProviderProtocolEnum: {
    readonly Oidc: "OIDC";
    readonly Saml: "SAML";
};
export type IdentityProviderProtocolEnum = typeof IdentityProviderProtocolEnum[keyof typeof IdentityProviderProtocolEnum];
/**
 * The IP context specifies allowed or denied IP address ranges or lists. Risk is applied to the authentication if the current IP address does not match an allowed IP address range/list or does match a denied IP address range/list.
 * @export
 * @interface IpContext
 */
export interface IpContext {
    /**
     * The UUID of an existing IP List that defines IPs that can access the resource. Risk applies if the given IP address is not found in the IP List. If specified, the allowed IP List takes precedence over the denied IP List.
     * @type {string}
     * @memberof IpContext
     */
    'allowedIpList'?: string;
    /**
     * List of IP Address ranges (in CIDR notation) that are allowed access the resource. Risk applies if the given IP address is not in one of the allowed IP ranges. If specified, the allowed IP values take precedence over the denied IP values.
     * @type {Array<string>}
     * @memberof IpContext
     */
    'allowedIpRanges'?: Array<string>;
    /**
     * The UUID of an existing IP List that defines IPs that cannot access the resource. Risk applies if the given IP address is found in the IP List. The denied IP List is ignored if an allowed IP List is specified.
     * @type {string}
     * @memberof IpContext
     */
    'deniedIpList'?: string;
    /**
     * List of IP Address ranges (in CIDR notation) that cannot access the resource. Risk applies if the given IP address is in one of the denied IP ranges. The denied IP values are ignored if allowed IP ranges are specified.
     * @type {Array<string>}
     * @memberof IpContext
     */
    'deniedIpRanges'?: Array<string>;
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof IpContext
     */
    'denyAccess': boolean;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof IpContext
     */
    'riskPoint': number;
    /**
     * The type of IpContext. If not specified, this value defaults to CUSTOM.
     * @type {string}
     * @memberof IpContext
     */
    'type'?: IpContextTypeEnum;
}
export declare const IpContextTypeEnum: {
    readonly Custom: "CUSTOM";
    readonly Iplist: "IPLIST";
};
export type IpContextTypeEnum = typeof IpContextTypeEnum[keyof typeof IpContextTypeEnum];
/**
 * The IP address for which the IP location information is to be returned.
 * @export
 * @interface IpLocation
 */
export interface IpLocation {
    /**
     * The city name--always returned in upper-case.
     * @type {string}
     * @memberof IpLocation
     */
    'cityName'?: string;
    /**
     * A two-character (alpha-2) ISO 3166-1  country code.
     * @type {string}
     * @memberof IpLocation
     */
    'countryCode'?: string;
    /**
     * The IPv4 Address.
     * @type {string}
     * @memberof IpLocation
     */
    'ipAddress'?: string;
    /**
     * The ISP name--always returned in upper-case.
     * @type {string}
     * @memberof IpLocation
     */
    'isp'?: string;
    /**
     * The latitude.
     * @type {number}
     * @memberof IpLocation
     */
    'latitude'?: number;
    /**
     * The longitude.
     * @type {number}
     * @memberof IpLocation
     */
    'longitude'?: number;
    /**
     * Whether the IP provided is a private IP Address.  The value is only available when resolving an IP address to an IpLocation.
     * @type {boolean}
     * @memberof IpLocation
     */
    'privateIpAddress'?: boolean;
}
/**
 * Issuance entitlements of a tenant.
 * @export
 * @interface Issuance
 */
export interface Issuance {
    /**
     * Add on column to store printer cert flag
     * @type {string}
     * @memberof Issuance
     */
    'addOn'?: string;
    /**
     * The entitlements consumed since start date during a Trial period.
     * @type {number}
     * @memberof Issuance
     */
    'consumed'?: number;
    /**
     * The date when the Trial period will end. This value is not returned if the account status is PRODUCTION.
     * @type {string}
     * @memberof Issuance
     */
    'endDate'?: string;
    /**
     * The number of print jobs allowed during the Trial period. This value is not returned if the account status is PRODUCTION.
     * @type {number}
     * @memberof Issuance
     */
    'quantity'?: number;
    /**
     * The service bundles supported.
     * @type {Array<ServiceBundle>}
     * @memberof Issuance
     */
    'serviceBundles': Array<ServiceBundle>;
    /**
     * The date when the Trial period starts. This value is not returned if the account status is PRODUCTION.
     * @type {string}
     * @memberof Issuance
     */
    'startDate'?: string;
}
/**
 * Parameters passed when setting the Issuance entitlements of a tenant.
 * @export
 * @interface IssuanceParms
 */
export interface IssuanceParms {
    /**
     * Add on column to store printer cert flag
     * @type {string}
     * @memberof IssuanceParms
     */
    'addOn'?: string;
    /**
     * The date when the Trial period will end.  The value must be after the start date. If specified, this value cannot be more than 30 days after start date.
     * @type {string}
     * @memberof IssuanceParms
     */
    'endDate'?: string;
    /**
     * The number of print jobs allowed during the Trial period (required during creation).
     * @type {number}
     * @memberof IssuanceParms
     */
    'quantity'?: IssuanceParmsQuantityEnum;
    /**
     * The service bundles supported. At least one bundle must be defined.
     * @type {Array<ServiceBundle>}
     * @memberof IssuanceParms
     */
    'serviceBundles'?: Array<ServiceBundle>;
    /**
     * The date when the Trial period starts. This value cannot be in the future. If not specified, it defaults to the current date.
     * @type {string}
     * @memberof IssuanceParms
     */
    'startDate'?: string;
}
export declare const IssuanceParmsQuantityEnum: {
    readonly NUMBER_25: 25;
    readonly NUMBER_100: 100;
};
export type IssuanceParmsQuantityEnum = typeof IssuanceParmsQuantityEnum[keyof typeof IssuanceParmsQuantityEnum];
/**
 * The KBA context allows the settings for knowledge-based authentication to be overridden for a particular resource rule.  For example, a different challenge size can be specified.
 * @export
 * @interface KbaContext
 */
export interface KbaContext {
    /**
     * Number of questions that the user must answer. If not provided, the default QA challenge size in the KBA settings is used.
     * @type {number}
     * @memberof KbaContext
     */
    'challengeSize'?: number;
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof KbaContext
     */
    'denyAccess': boolean;
    /**
     * Number of questions that the user could answer incorrectly and still be considered a valid response. If not provided, the default wrong answers allowed in the KBA settings is used.
     * @type {number}
     * @memberof KbaContext
     */
    'wrongAnswersAllowed'?: number;
}
/**
 * KBA information stored for a user.
 * @export
 * @interface KnowledgeBasedAuthenticator
 */
export interface KnowledgeBasedAuthenticator {
    /**
     * The maximum number of questions a user can answer for KBA. If zero, then KBA is disabled. This value is not used when adding or updating a KBA. If provided, it will be ignored.
     * @type {number}
     * @memberof KnowledgeBasedAuthenticator
     */
    'maximumNumberOfQuestions'?: number;
    /**
     * The maximum number of characters in an answer. This value is not used when adding or updating a KBA. If provided, it will be ignored.
     * @type {number}
     * @memberof KnowledgeBasedAuthenticator
     */
    'maximumResponseSize'?: number;
    /**
     * The minimum number of questions a user must answer to perform KBA. Defaults to the maximum Q&A challenge size setting. This value is not used when adding or updating a KBA. If provided, it will be ignored.
     * @type {number}
     * @memberof KnowledgeBasedAuthenticator
     */
    'minimumNumberOfQuestions'?: number;
    /**
     * The list of question/answer pairs stored for a user. This is the only attribute required when adding or updating a KBA.
     * @type {Array<UserQuestion>}
     * @memberof KnowledgeBasedAuthenticator
     */
    'userQuestions': Array<UserQuestion>;
}
/**
 * The location context specifies allowed or denied country codes. Risk is applied to the authentication if the location of the current IP address does not match an allowed country or matches a disallowed country.
 * @export
 * @interface LocationContext
 */
export interface LocationContext {
    /**
     * If true, the list of countries defines allowed countries. If false, the list of countries defines denied countries.
     * @type {boolean}
     * @memberof LocationContext
     */
    'allowed': boolean;
    /**
     * If true, then allows anonymous/TOR IP addresses. If false, then denies anonymous/TOR IP addresses.
     * @type {boolean}
     * @memberof LocationContext
     */
    'anonymousAllowed': boolean;
    /**
     * List of country codes (ISO alpha-2) that can access(allowed=true) or not access (allowed=false).
     * @type {Array<string>}
     * @memberof LocationContext
     */
    'countryCodes': Array<string>;
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof LocationContext
     */
    'denyAccess': boolean;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof LocationContext
     */
    'riskPoint': number;
}
/**
 * Location history checks to see if the location of the current IP address matches a location from a previous authentication. If the current location does not match history, risk is applied.
 * @export
 * @interface LocationHistoryContext
 */
export interface LocationHistoryContext {
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof LocationHistoryContext
     */
    'denyAccess': boolean;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof LocationHistoryContext
     */
    'riskPoint': number;
}
/**
 * An LoginFlow defines an authentication option available in the authentication flow.
 * @export
 * @interface LoginFlow
 */
export interface LoginFlow {
    /**
     * Whether the login flow is enabled or not.
     * @type {boolean}
     * @memberof LoginFlow
     */
    'enabled': boolean;
    /**
     * Identifies the login flow type.
     * @type {string}
     * @memberof LoginFlow
     */
    'loginFlowType': LoginFlowLoginFlowTypeEnum;
}
export declare const LoginFlowLoginFlowTypeEnum: {
    readonly UserLogin: "USER_LOGIN";
    readonly SmartLogin: "SMART_LOGIN";
    readonly IdpLogin: "IDP_LOGIN";
    readonly PasskeyLogin: "PASSKEY_LOGIN";
    readonly UserCertificateLogin: "USER_CERTIFICATE_LOGIN";
};
export type LoginFlowLoginFlowTypeEnum = typeof LoginFlowLoginFlowTypeEnum[keyof typeof LoginFlowLoginFlowTypeEnum];
/**
 * Machine authenticator required to complete authentication challenge
 * @export
 * @interface MachineAuthenticator
 */
export interface MachineAuthenticator {
    /**
     * The device fingerprint if it\'s required during Machine authentication. It will always be null when returned from IDaaS as part of the response body.
     * @type {string}
     * @memberof MachineAuthenticator
     */
    'fingerprint'?: string;
    /**
     * machineNonce
     * @type {string}
     * @memberof MachineAuthenticator
     */
    'machineNonce'?: string;
    /**
     * sequenceNonce
     * @type {string}
     * @memberof MachineAuthenticator
     */
    'sequenceNonce'?: string;
}
/**
 * Register a machine authenticator for authentication to Identity as a Service
 * @export
 * @interface MachineAuthenticatorRegistration
 */
export interface MachineAuthenticatorRegistration {
    /**
     * The device fingerprint. It must be a valid fingerprint as produced by Entrust SDK.
     * @type {string}
     * @memberof MachineAuthenticatorRegistration
     */
    'fingerprint'?: string;
    /**
     * Identifies the device/machine from the end-user point of view.
     * @type {string}
     * @memberof MachineAuthenticatorRegistration
     */
    'label': string;
}
/**
 *
 * @export
 * @interface MachineAuthenticatorRegistrationResult
 */
export interface MachineAuthenticatorRegistrationResult {
    /**
     *
     * @type {MachineAuthenticator}
     * @memberof MachineAuthenticatorRegistrationResult
     */
    'machineAuthenticator'?: MachineAuthenticator;
    /**
     *
     * @type {UserMachineAuthenticator}
     * @memberof MachineAuthenticatorRegistrationResult
     */
    'userMachineAuthenticator'?: UserMachineAuthenticator;
}
/**
 * Represents a Machine Authenticator authentication context. When defined, a Machine Authentication authenticator is expected in the  authentication request. Risk will apply if the machine authentication authenticator is not present or if the risk for the machine authentication authentication is greater than the risk limit define for the Machine context.
 * @export
 * @interface MachineContext
 */
export interface MachineContext {
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof MachineContext
     */
    'denyAccess': boolean;
    /**
     * The risk points apply if the machine authenticator risk is below or equal to this value.
     * @type {number}
     * @memberof MachineContext
     */
    'riskLimit': number;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof MachineContext
     */
    'riskPoint': number;
}
/**
 * Magic Link authenticator information.
 * @export
 * @interface MagicLink
 */
export interface MagicLink {
    /**
     * The date and time the Magic Link was created.
     * @type {string}
     * @memberof MagicLink
     */
    'created'?: string;
    /**
     * The email address the Magic Link was delivered to.
     * @type {string}
     * @memberof MagicLink
     */
    'email'?: string;
    /**
     * The date and time the Magic Link will expire.
     * @type {string}
     * @memberof MagicLink
     */
    'expiry'?: string;
    /**
     * The redirect URL to be used after the Magic Link is clicked.
     * @type {string}
     * @memberof MagicLink
     */
    'redirectUrl'?: string;
    /**
     * The type of Magic Link that was sent.
     * @type {string}
     * @memberof MagicLink
     */
    'type'?: string;
}
/**
 * Magic link Parameters for a user.
 * @export
 * @interface MagicLinkCreateParms
 */
export interface MagicLinkCreateParms {
    /**
     * Automatically send the Magic Link if the user has a default email or one is specified that matches a configured email.
     * @type {boolean}
     * @memberof MagicLinkCreateParms
     */
    'autoSend'?: boolean;
    /**
     * The email to send the Magic Link to if it exists.
     * @type {string}
     * @memberof MagicLinkCreateParms
     */
    'email'?: string;
    /**
     * Automatically redirect the user to an external URL after completing registration. The URL must match one of the allowed URLs.
     * @type {string}
     * @memberof MagicLinkCreateParms
     */
    'redirectUrl'?: string;
    /**
     * The type of magic link to create.
     * @type {string}
     * @memberof MagicLinkCreateParms
     */
    'type'?: string;
}
/**
 * Parameters returned from the create Magic Link operation.
 * @export
 * @interface MagicLinkResponse
 */
export interface MagicLinkResponse {
    /**
     * Expiry date of the Magic Link.
     * @type {string}
     * @memberof MagicLinkResponse
     */
    'expiryDate'?: string;
    /**
     * The generated Magic Link. This value will only be returned if the administrator has the MAGICLINKCONTENTS:VIEW permission and autoSend is set to false.
     * @type {string}
     * @memberof MagicLinkResponse
     */
    'url'?: string;
}
/**
 * MobileFlashPass entitlements of a tenant.
 * @export
 * @interface MobileFlashPass
 */
export interface MobileFlashPass {
    /**
     * The entitlements consumed since start date during the entitlement period.
     * @type {number}
     * @memberof MobileFlashPass
     */
    'consumed'?: number;
    /**
     * The date when the entitlement will end.
     * @type {string}
     * @memberof MobileFlashPass
     */
    'endDate'?: string;
    /**
     * The number of FlashPass claims allowed during the period.
     * @type {number}
     * @memberof MobileFlashPass
     */
    'quantity'?: number;
    /**
     * The date when the entitlement starts.
     * @type {string}
     * @memberof MobileFlashPass
     */
    'startDate'?: string;
}
/**
 *
 * @export
 * @interface ModelError
 */
export interface ModelError {
    /**
     * The server error code
     * @type {string}
     * @memberof ModelError
     */
    'code': string;
    /**
     * A human-readable representation of the error
     * @type {string}
     * @memberof ModelError
     */
    'message': string;
    /**
     * The target of the error
     * @type {string}
     * @memberof ModelError
     */
    'target'?: string;
}
/**
 * Information about an attribute that was modified for an entity.
 * @export
 * @interface ModifiedEntityAttribute
 */
export interface ModifiedEntityAttribute {
    /**
     * The name of the attribute.
     * @type {string}
     * @memberof ModifiedEntityAttribute
     */
    'name'?: string;
    /**
     * The new value of the attribute.
     * @type {string}
     * @memberof ModifiedEntityAttribute
     */
    'newValue'?: string;
    /**
     * The old value of the attribute.
     * @type {string}
     * @memberof ModifiedEntityAttribute
     */
    'oldValue'?: string;
}
/**
 * A list of all oauth roles to which this user belongs.
 * @export
 * @interface OAuthRole
 */
export interface OAuthRole {
    /**
     * The set of ancestor oauth role ids.
     * @type {Array<string>}
     * @memberof OAuthRole
     */
    'ancestorIds': Array<string>;
    /**
     * The set of descendant oauth role ids.
     * @type {Array<string>}
     * @memberof OAuthRole
     */
    'descendantIds': Array<string>;
    /**
     * The description of this oauth role.
     * @type {string}
     * @memberof OAuthRole
     */
    'description'?: string;
    /**
     * The UUID of this oauth role. This value is generated when the oauth role is created.
     * @type {string}
     * @memberof OAuthRole
     */
    'id': string;
    /**
     * The set of resource server scopes ids associated with this oauth role based on inheritance from its ancestors.
     * @type {Array<string>}
     * @memberof OAuthRole
     */
    'inheritedResourceServerScopeIds': Array<string>;
    /**
     * The name of this oauth role.
     * @type {string}
     * @memberof OAuthRole
     */
    'name': string;
    /**
     * The UUID of the parent of this oauth role, if one exists.
     * @type {string}
     * @memberof OAuthRole
     */
    'parentId'?: string;
    /**
     * The set of resource server scopes ids associated with this oauth role.
     * @type {Array<string>}
     * @memberof OAuthRole
     */
    'resourceServerScopeIds': Array<string>;
}
/**
 * An OTP  defines the information returned about an OTP.
 * @export
 * @interface OTP
 */
export interface OTP {
    /**
     * The authorization token expiry time.
     * @type {number}
     * @memberof OTP
     */
    'exp'?: number;
    /**
     * The OTP.
     * @type {string}
     * @memberof OTP
     */
    'otp'?: string;
    /**
     * The OTP delivery type used.  The value is null if OTP delivery was not performed
     * @type {string}
     * @memberof OTP
     */
    'otpDeliveryType'?: OTPOtpDeliveryTypeEnum;
    /**
     * The OTP Expiry Date.
     * @type {string}
     * @memberof OTP
     */
    'otpExpiryDate'?: string;
    /**
     * The authorization token representing the OTP authentication challenge to complete.
     * @type {string}
     * @memberof OTP
     */
    'token'?: string;
}
export declare const OTPOtpDeliveryTypeEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly Wechat: "WECHAT";
    readonly Whatsapp: "WHATSAPP";
};
export type OTPOtpDeliveryTypeEnum = typeof OTPOtpDeliveryTypeEnum[keyof typeof OTPOtpDeliveryTypeEnum];
/**
 * New OTP authenticator settings.
 * @export
 * @interface OTPAuthenticatorSettings
 */
export interface OTPAuthenticatorSettings {
    /**
     * Indicates whether client applications can delivery OTP to default delivery contact or can enforce users to choose an OTP delivery.
     * @type {boolean}
     * @memberof OTPAuthenticatorSettings
     */
    'defaultDeliveryEnabled'?: boolean;
    /**
     * The allowed OTP delivery mechanisms in order of preference. Default is SMS, followed by Email, and Voice.
     * @type {Array<OTPDeliveryMethod>}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'deliveryMethods'?: Array<OTPDeliveryMethod>;
    /**
     * Indicates whether the OTP expiry date will be included in the OTP SMS message
     * @type {boolean}
     * @memberof OTPAuthenticatorSettings
     */
    'includeOtpExpiryDate'?: boolean;
    /**
     * Characters that can appear in a RANDOM OTP. Can contain any non-whitespace character. Default is all digits.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     */
    'otpAlphabet'?: string;
    /**
     * The default OTP delivery mechanism. This attribute is deprecated, use the deliveryMethods attribute.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpDefaultDelivery'?: OTPAuthenticatorSettingsOtpDefaultDeliveryEnum;
    /**
     * Id of the default OTP delivery attribute. Deprecated : Use default attribute specific to delivery mechanism instead eg. otpSmsDefaultDeliveryAttribute, otpEmailDefaultDeliveryAttribute
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpDefaultDeliveryAttribute'?: string;
    /**
     * Indicates the order preference to use for OTP delivery.
     * @type {Array<OTPPreferenceDetails>}
     * @memberof OTPAuthenticatorSettings
     */
    'otpDeliveryPreference'?: Array<OTPPreferenceDetails>;
    /**
     * Id of the default Email OTP delivery attribute.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpEmailDefaultDeliveryAttribute'?: string;
    /**
     * The length of an OTP. Default is 8.
     * @type {number}
     * @memberof OTPAuthenticatorSettings
     */
    'otpLength'?: number;
    /**
     * The lifetime of an OTP in seconds. Default is 300.
     * @type {number}
     * @memberof OTPAuthenticatorSettings
     */
    'otpLifetime'?: number;
    /**
     * Id of the default SMS OTP delivery attribute.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpSmsDefaultDeliveryAttribute'?: string;
    /**
     * The type of OTP generated.  Choices are RANDOM or MEMO_PASSCODE. Default is RANDOM
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     */
    'otpType'?: OTPAuthenticatorSettingsOtpTypeEnum;
    /**
     * Id of the default Voice OTP delivery attribute.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpVoiceDefaultDeliveryAttribute'?: string;
    /**
     * Id of the default Wechat OTP delivery attribute.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpWechatDefaultDeliveryAttribute'?: string;
    /**
     * Id of the default Whatsapp OTP delivery attribute.
     * @type {string}
     * @memberof OTPAuthenticatorSettings
     * @deprecated
     */
    'otpWhatsappDefaultDeliveryAttribute'?: string;
    /**
     * Indicates whether masked OTP contact attribute values are included in authentication API.
     * @type {boolean}
     * @memberof OTPAuthenticatorSettings
     */
    'showOtpDeliveryContact'?: boolean;
}
export declare const OTPAuthenticatorSettingsOtpDefaultDeliveryEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly Wechat: "WECHAT";
    readonly Whatsapp: "WHATSAPP";
    readonly None: "NONE";
};
export type OTPAuthenticatorSettingsOtpDefaultDeliveryEnum = typeof OTPAuthenticatorSettingsOtpDefaultDeliveryEnum[keyof typeof OTPAuthenticatorSettingsOtpDefaultDeliveryEnum];
export declare const OTPAuthenticatorSettingsOtpTypeEnum: {
    readonly Random: "RANDOM";
    readonly MemoPasscode: "MEMO_PASSCODE";
};
export type OTPAuthenticatorSettingsOtpTypeEnum = typeof OTPAuthenticatorSettingsOtpTypeEnum[keyof typeof OTPAuthenticatorSettingsOtpTypeEnum];
/**
 * The OTP to create.
 * @export
 * @interface OTPCreateParms
 */
export interface OTPCreateParms {
    /**
     * Unique identifier of the Identity as a Service Authentication API application
     * @type {string}
     * @memberof OTPCreateParms
     */
    'applicationId': string;
    /**
     * Provided client IP address.
     * @type {string}
     * @memberof OTPCreateParms
     */
    'clientIp'?: string;
    /**
     * Whether to deliver the OTP.  If not specified, this defaults to true.
     * @type {boolean}
     * @memberof OTPCreateParms
     */
    'deliverOTP'?: boolean;
    /**
     * Defines how a user receives their one-time passcode (Email, Text message (SMS), or Voice message (VOICE)).
     * @type {string}
     * @memberof OTPCreateParms
     */
    'otpDeliveryType'?: OTPCreateParmsOtpDeliveryTypeEnum;
    /**
     * Whether to return the OTP.  If not specified, this defaults to false.
     * @type {boolean}
     * @memberof OTPCreateParms
     */
    'returnOTP'?: boolean;
    /**
     * Defines transaction details to be associated with the OTP.
     * @type {Array<TransactionDetail>}
     * @memberof OTPCreateParms
     */
    'transactionDetails'?: Array<TransactionDetail>;
    /**
     * User ID (containing the user ID or a user alias) of the Identity as a Service user the OTP is being created for.
     * @type {string}
     * @memberof OTPCreateParms
     */
    'userId': string;
}
export declare const OTPCreateParmsOtpDeliveryTypeEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly Wechat: "WECHAT";
    readonly Whatsapp: "WHATSAPP";
};
export type OTPCreateParmsOtpDeliveryTypeEnum = typeof OTPCreateParmsOtpDeliveryTypeEnum[keyof typeof OTPCreateParmsOtpDeliveryTypeEnum];
/**
 * OTPDeliveryMethod
 * @export
 * @interface OTPDeliveryMethod
 */
export interface OTPDeliveryMethod {
    /**
     * Whether the method is enabled.
     * @type {boolean}
     * @memberof OTPDeliveryMethod
     */
    'enabled'?: boolean;
    /**
     * The OTP delivery method type.
     * @type {string}
     * @memberof OTPDeliveryMethod
     */
    'name'?: OTPDeliveryMethodNameEnum;
}
export declare const OTPDeliveryMethodNameEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly Wechat: "WECHAT";
    readonly Whatsapp: "WHATSAPP";
};
export type OTPDeliveryMethodNameEnum = typeof OTPDeliveryMethodNameEnum[keyof typeof OTPDeliveryMethodNameEnum];
/**
 * Settings that control the behavior of OTP authentication.
 * @export
 * @interface OTPPreferenceDetails
 */
export interface OTPPreferenceDetails {
    /**
     * A list of uuids of the otp contact attributes in order which indicates the OTP contacts preference.
     * @type {Array<string>}
     * @memberof OTPPreferenceDetails
     */
    'contactAttributes'?: Array<string>;
    /**
     * Indicates the type of the otp preference details.
     * @type {string}
     * @memberof OTPPreferenceDetails
     */
    'type': OTPPreferenceDetailsTypeEnum;
}
export declare const OTPPreferenceDetailsTypeEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly Wechat: "WECHAT";
    readonly Whatsapp: "WHATSAPP";
    readonly None: "NONE";
};
export type OTPPreferenceDetailsTypeEnum = typeof OTPPreferenceDetailsTypeEnum[keyof typeof OTPPreferenceDetailsTypeEnum];
/**
 * Response from contact verification
 * @export
 * @interface OTPVerificationAuthenticateResponse
 */
export interface OTPVerificationAuthenticateResponse {
    /**
     * The number of attempts left for authentication failure
     * @type {number}
     * @memberof OTPVerificationAuthenticateResponse
     */
    'attemptsLeft': number;
    /**
     * The challenge Id of the user\'s input
     * @type {string}
     * @memberof OTPVerificationAuthenticateResponse
     */
    'challengeId': string;
    /**
     * The error message during the authentication
     * @type {string}
     * @memberof OTPVerificationAuthenticateResponse
     */
    'errorCode'?: string;
    /**
     * A boolean value which indicates if the authentication is successful
     * @type {boolean}
     * @memberof OTPVerificationAuthenticateResponse
     */
    'success': boolean;
}
/**
 * Information passed in when authenticating the contact verification challenge.
 * @export
 * @interface OTPVerificationAuthenticateValue
 */
export interface OTPVerificationAuthenticateValue {
    /**
     * The unique challenge response identifier used for authentication
     * @type {string}
     * @memberof OTPVerificationAuthenticateValue
     */
    'challengeId': string;
    /**
     * The otp response
     * @type {string}
     * @memberof OTPVerificationAuthenticateValue
     */
    'challengeResponse': string;
}
/**
 * Challenge response returned by the contact verification challenge request
 * @export
 * @interface OTPVerificationChallengeResponse
 */
export interface OTPVerificationChallengeResponse {
    /**
     * The unique challenge response identifier which will be used for authentication.
     * @type {string}
     * @memberof OTPVerificationChallengeResponse
     */
    'challengeId': string;
}
/**
 * Information passed when sending contact verification challenge request
 * @export
 * @interface OTPVerificationChallengeValue
 */
export interface OTPVerificationChallengeValue {
    /**
     * Type of contact delivery. Only supported for OTP contact attributes.
     * @type {string}
     * @memberof OTPVerificationChallengeValue
     */
    'type': OTPVerificationChallengeValueTypeEnum;
    /**
     * The exact email or phone number that the OTP will be sent to.
     * @type {string}
     * @memberof OTPVerificationChallengeValue
     */
    'value': string;
}
export declare const OTPVerificationChallengeValueTypeEnum: {
    readonly None: "NONE";
    readonly OtpEmail: "OTP_EMAIL";
    readonly OtpSms: "OTP_SMS";
    readonly OtpVoice: "OTP_VOICE";
    readonly OtpWechat: "OTP_WECHAT";
    readonly OtpWhatsapp: "OTP_WHATSAPP";
};
export type OTPVerificationChallengeValueTypeEnum = typeof OTPVerificationChallengeValueTypeEnum[keyof typeof OTPVerificationChallengeValueTypeEnum];
/**
 * OidcConfigurationParms
 * @export
 * @interface OidcConfigurationParms
 */
export interface OidcConfigurationParms {
    /**
     * The issuer URL of the OIDC/OAuth identity provider.
     * @type {string}
     * @memberof OidcConfigurationParms
     */
    'issuerUrl': string;
}
/**
 * An OidcConfigurationResponse defines the external OpenID Connect identity provider configuration.
 * @export
 * @interface OidcConfigurationResponse
 */
export interface OidcConfigurationResponse {
    /**
     * The authorization endpoint of the external OIDC identity provider.
     * @type {string}
     * @memberof OidcConfigurationResponse
     */
    'authorizationEndpoint'?: string;
    /**
     * A list of claims supported by the external OIDC identity provider.
     * @type {Array<string>}
     * @memberof OidcConfigurationResponse
     */
    'claimsSupported'?: Array<string>;
    /**
     * The JWKS URI endpoint of the external OIDC identity provider used to verify a token signature.
     * @type {string}
     * @memberof OidcConfigurationResponse
     */
    'jwksUri'?: string;
    /**
     * A flag indicating if the user information endpoint of the external OIDC identity provider should be signed and verified.
     * @type {boolean}
     * @memberof OidcConfigurationResponse
     */
    'requireUserinfoSignature'?: boolean;
    /**
     * The revocation endpoint of the external OIDC identity provider.
     * @type {string}
     * @memberof OidcConfigurationResponse
     */
    'revocationEndpoint'?: string;
    /**
     * A list of scopes supported by the external OIDC identity provider.
     * @type {Array<string>}
     * @memberof OidcConfigurationResponse
     */
    'scopesSupported'?: Array<string>;
    /**
     * The token endpoint of the external OIDC identity provider.
     * @type {string}
     * @memberof OidcConfigurationResponse
     */
    'tokenEndpoint'?: string;
    /**
     * The user information endpoint of the external OIDC identity provider.
     * @type {string}
     * @memberof OidcConfigurationResponse
     */
    'userinfoEndpoint'?: string;
}
/**
 * An OidcIdentityProvider defines the information returned about an external OpenID Connect identity provider for use with user authentication or user verification.
 * @export
 * @interface OidcIdentityProvider
 */
export interface OidcIdentityProvider {
    /**
     * The space separated list of authentication context request values to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'acrValues'?: string;
    /**
     * The space separated list of authentication method request values to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'amrValues'?: string;
    /**
     * A flag indicating if the external OIDC identity provider can be used for user authentication.
     * @type {boolean}
     * @memberof OidcIdentityProvider
     */
    'authenticationEnabled'?: boolean;
    /**
     * The authorization endpoint for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'authorizationEndpoint'?: string;
    /**
     * The URI of the logo to display on the login button for this external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'buttonImage'?: string;
    /**
     * The unique text to display on the login button for this external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'buttonText'?: string;
    /**
     * The client authentication method to use with the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'clientAuthenticationMethod'?: OidcIdentityProviderClientAuthenticationMethodEnum;
    /**
     * The client identifier provided by the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'clientId'?: string;
    /**
     * The client secret provided by the external OIDC identity provider. Currently this value is not returned.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'clientSecret'?: string;
    /**
     * A flag indicating if the user should be created after authenticating to the external OIDC identity provider if it doesn\'t exist. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if authenticationEnabled is true.
     * @type {boolean}
     * @memberof OidcIdentityProvider
     */
    'createUser'?: boolean;
    /**
     * The space separated list of domains associated with the external OIDC identity provider for use with user authentication.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'domains'?: string;
    /**
     * The value of user fields that need to be set the external OIDC identity provider when acquiring user information. This value is used with a TWITTER IDP.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'fields'?: string;
    /**
     * The UUIDs of groups that will be assigned to users created after an external OIDC identity provider user authentication. An empty list means the user will be assigned to All Groups. If configured, the full set of groups must be configured. This value is used if createUser is true.
     * @type {Array<string>}
     * @memberof OidcIdentityProvider
     */
    'groupIds'?: Array<string>;
    /**
     * The association between a specified claim returned from the external OIDC identity provider and IDaaS groups. This mapping is used to associated IDaaS groups when a user is created or modified based on an external OIDC identity provider user authentication or when it is modified based on an external OIDC identity provider user verification. This value is used if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'groupMapping'?: string;
    /**
     * The UUID of the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'id'?: string;
    /**
     * The space separated list of id token claims to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'idTokenClaims'?: string;
    /**
     * The issuer URI for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'issuer'?: string;
    /**
     * The JWKS URI endpoint for the external OIDC identity provider used to verify a token signature.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'jwksUri'?: string;
    /**
     * The max age to request as part of the external OIDC identity provider user authentication or user verification request. If -1, the value will not be included in the request.
     * @type {number}
     * @memberof OidcIdentityProvider
     */
    'maxAge'?: number;
    /**
     * The unique name of the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'name'?: string;
    /**
     * The UUIDs of organizations that will be assigned to users created after an external OIDC identity provider user authentication. If configured, the full set of organizations must be configured. This value is used if createUser is true.
     * @type {Array<string>}
     * @memberof OidcIdentityProvider
     */
    'organizationIds'?: Array<string>;
    /**
     * A flag indicating if the user information endpoint of the external OIDC identity provider should be signed and verified.
     * @type {boolean}
     * @memberof OidcIdentityProvider
     */
    'requireUserinfoSignature'?: boolean;
    /**
     * The revocation endpoint for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'revocationEndpoint'?: string;
    /**
     * The association between a specified claim returned from the external OIDC identity provider and an IDaaS role. This mapping is used to associated an IDaaS role when a user is created or modified based on an external OIDC identity provider user authentication or when it is modified based on an external OIDC identity provider user verification. This value is used if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'roleMapping'?: string;
    /**
     * The space separated list of scopes to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'scopes'?: string;
    /**
     * The token endpoint for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'tokenEndpoint'?: string;
    /**
     * The type of the external OIDC identity provider. Once created, this value cannot be updated.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'type'?: OidcIdentityProviderTypeEnum;
    /**
     * A flag indicating if the user should be updated after authenticating to the external OIDC identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if authenticationEnabled is true.
     * @type {boolean}
     * @memberof OidcIdentityProvider
     */
    'updateUser'?: boolean;
    /**
     * A flag indicating if the user should be updated after user verification to the external OIDC identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if verificationEnabled is true.
     * @type {boolean}
     * @memberof OidcIdentityProvider
     */
    'updateUserVerification'?: boolean;
    /**
     * The IDaaS user attribute ID used to find IDaaS users associated with an external OIDC identity provider user authentication. This value is used if authenticationEnabled is true.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'userAttributeId'?: string;
    /**
     * The association between the claims returned from the external OIDC identity provider and IDaaS user attributes. These attributes are used to populate user attributes when it is created or modified based on an external OIDC identity provider user authentication or when it is modified based on an external OIDC identity provider user verification. If configured, the full set of mappings must be configured. This value is used if createUser, updateUser, or updateVerificationUser is true.
     * @type {Array<OidcIdentityProviderAttributeMapping>}
     * @memberof OidcIdentityProvider
     */
    'userAttributeMappings'?: Array<OidcIdentityProviderAttributeMapping>;
    /**
     * The association between the claims returned from the external OIDC identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external OIDC identity provider user authentication. If configured, the full set of mappings must be configured. This value is used if authenticationEnabled is true.
     * @type {Array<OidcIdentityProviderUserAuthMatchMapping>}
     * @memberof OidcIdentityProvider
     */
    'userAuthMatchMappings'?: Array<OidcIdentityProviderUserAuthMatchMapping>;
    /**
     * The external OIDC identity provider claim used to find IDaaS users associated with an external OIDC identity provider user authentication. This value is used if authenticationEnabled is true.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'userClaim'?: string;
    /**
     * The association between the claims returned from the external OIDC identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external OIDC identity provider user verification. If configured, the full set of mappings must be configured. This value is used if verificationEnabled is true.
     * @type {Array<OidcIdentityProviderUserVerMatchMapping>}
     * @memberof OidcIdentityProvider
     */
    'userVerMatchMappings'?: Array<OidcIdentityProviderUserVerMatchMapping>;
    /**
     * The space separated list of user information claims to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'userinfoClaims'?: string;
    /**
     * The user information endpoint for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProvider
     */
    'userinfoEndpoint'?: string;
    /**
     * A flag indicating if the external OIDC identity provider can be used for user verification.
     * @type {boolean}
     * @memberof OidcIdentityProvider
     */
    'verificationEnabled'?: boolean;
}
export declare const OidcIdentityProviderClientAuthenticationMethodEnum: {
    readonly ClientSecretBasic: "CLIENT_SECRET_BASIC";
    readonly ClientSecretPost: "CLIENT_SECRET_POST";
};
export type OidcIdentityProviderClientAuthenticationMethodEnum = typeof OidcIdentityProviderClientAuthenticationMethodEnum[keyof typeof OidcIdentityProviderClientAuthenticationMethodEnum];
export declare const OidcIdentityProviderTypeEnum: {
    readonly Facebook: "FACEBOOK";
    readonly Generic: "GENERIC";
    readonly Google: "GOOGLE";
    readonly Idv: "IDV";
    readonly Microsoft: "MICROSOFT";
    readonly Sp: "SP";
    readonly Twitter: "TWITTER";
};
export type OidcIdentityProviderTypeEnum = typeof OidcIdentityProviderTypeEnum[keyof typeof OidcIdentityProviderTypeEnum];
/**
 * An OidcIdentityProviderAttributeMapping maps a claim returned from an external OIDC identity provider user authentication or user verification to an IDaaS user attribute.
 * @export
 * @interface OidcIdentityProviderAttributeMapping
 */
export interface OidcIdentityProviderAttributeMapping {
    /**
     * The name of the claim being mapped. This value must be provided when creating or modifying an attribute mapping.
     * @type {string}
     * @memberof OidcIdentityProviderAttributeMapping
     */
    'claim': string;
    /**
     * The UUID of the OIDC identity provider attribute mapping.
     * @type {string}
     * @memberof OidcIdentityProviderAttributeMapping
     */
    'id'?: string;
    /**
     * The UUID of the OIDC identity provider the attribute mapping belongs to.
     * @type {string}
     * @memberof OidcIdentityProviderAttributeMapping
     */
    'oidcIdentityProviderId'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof OidcIdentityProviderAttributeMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the IDaaS user attribute being mapped to. This value must be provided when creating or modifying an attribute mapping.
     * @type {string}
     * @memberof OidcIdentityProviderAttributeMapping
     */
    'userAttributeId': string;
}
/**
 * An OidcIdentityProviderParms defines the information passed to Identity as a Service when creating or modifying an external OpenID Connect identity provider for use with user authentication or user verification.
 * @export
 * @interface OidcIdentityProviderParms
 */
export interface OidcIdentityProviderParms {
    /**
     * The space separated list of authentication context request values to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'acrValues'?: string;
    /**
     * The space separated list of authentication method request values to request as part of the external OIDC identity provider user authentication or user verification request. This is required when creating an IDV IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'amrValues'?: string;
    /**
     * A flag indicating if the external OIDC identity provider can be used for user authentication. If enabled, userAttributeId and userClaim are required.
     * @type {boolean}
     * @memberof OidcIdentityProviderParms
     */
    'authenticationEnabled'?: boolean;
    /**
     * The authorization endpoint for the external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'authorizationEndpoint'?: string;
    /**
     * The URI of the logo to display on the login button for this external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'buttonImage'?: string;
    /**
     * The unique text to display on the login button for this external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'buttonText'?: string;
    /**
     * The client authentication method to use with the external OIDC identity provider. The default value is ClientAuthenticationMethod.CLIENT_SECRET_BASIC.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'clientAuthenticationMethod'?: OidcIdentityProviderParmsClientAuthenticationMethodEnum;
    /**
     * The client identifier provided by the external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'clientId'?: string;
    /**
     * The client secret provided by the external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'clientSecret'?: string;
    /**
     * A flag indicating if the user should be created after authenticating to the external OIDC identity provider if it doesn\'t exist. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value can only be set if authenticationEnabled is true.
     * @type {boolean}
     * @memberof OidcIdentityProviderParms
     */
    'createUser'?: boolean;
    /**
     * The space separated list of domains associated with the external OIDC identity provider for use with user authentication.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'domains'?: string;
    /**
     * The value of user fields that need to be set the external OIDC identity provider when acquiring user information. This value is required when creating a TWITTER IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'fields'?: string;
    /**
     * The UUIDs of groups that will be assigned to users created after an external OIDC identity provider user authentication. An empty list means the user will be assigned to All Groups. If configured, the full set of groups must be configured. This value can only be set if createUser is true.
     * @type {Array<string>}
     * @memberof OidcIdentityProviderParms
     */
    'groupIds'?: Array<string>;
    /**
     * The association between a specified claim returned from the external OIDC identity provider and IDaaS groups. This mapping is used to associated IDaaS groups when a user is created or modified based on an external OIDC identity provider user authentication or when it is modified based on an external OIDC identity provider user verification. This value can only be set if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'groupMapping'?: string;
    /**
     * The space separated list of id token claims to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'idTokenClaims'?: string;
    /**
     * The issuer URI for the external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'issuer'?: string;
    /**
     * The JWKS URI endpoint for the external OIDC identity provider used to verify a token signature. This value is required when creating an IDP except for TWITTER.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'jwksUri'?: string;
    /**
     * The max age to request as part of the external OIDC identity provider user authentication or user verification request. If -1, the value will not be included in the request.
     * @type {number}
     * @memberof OidcIdentityProviderParms
     */
    'maxAge'?: number;
    /**
     * The unique name of the external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'name'?: string;
    /**
     * The UUIDs of organizations that will be assigned to users created after an external OIDC identity provider user authentication. If configured, the full set of organizations must be configured. This value can only be set if createUser is true.
     * @type {Array<string>}
     * @memberof OidcIdentityProviderParms
     */
    'organizationIds'?: Array<string>;
    /**
     * A flag indicating if the user information endpoint of the external OIDC identity provider should be signed and verified.
     * @type {boolean}
     * @memberof OidcIdentityProviderParms
     */
    'requireUserinfoSignature'?: boolean;
    /**
     * The revocation endpoint for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'revocationEndpoint'?: string;
    /**
     * The association between a specified claim returned from the external OIDC identity provider and an IDaaS role. This mapping is used to associated an IDaaS role when a user is created or modified based on an external OIDC identity provider user authentication or when it is modified based on an external OIDC identity provider user verification. This value can only be set if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'roleMapping'?: string;
    /**
     * The space separated list of scopes to request as part of the external OIDC identity provider user authentication or user verification request. This value is required when creating an IDP except for TWITTER.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'scopes'?: string;
    /**
     * The token endpoint for the external OIDC identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'tokenEndpoint'?: string;
    /**
     * The type of the external OIDC identity provider. Once created, this value cannot be updated. This value is required when creating an IDP.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'type'?: OidcIdentityProviderParmsTypeEnum;
    /**
     * A flag indicating if the user should be updated after authenticating to the external OIDC identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value can only be set if authenticationEnabled is true.
     * @type {boolean}
     * @memberof OidcIdentityProviderParms
     */
    'updateUser'?: boolean;
    /**
     * A flag indicating if the user should be updated after user verification to the external OIDC identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value can only be set if verificationEnabled is true.
     * @type {boolean}
     * @memberof OidcIdentityProviderParms
     */
    'updateUserVerification'?: boolean;
    /**
     * The IDaaS user attribute ID used to find IDaaS users associated with an external OIDC identity provider user authentication. This value can only be set if authenticationEnabled is true.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'userAttributeId'?: string;
    /**
     * The association between the claims returned from the external OIDC identity provider and IDaaS user attributes. These attributes are used to populate user attributes when it is created or modified based on an external OIDC identity provider user authentication or when it is modified based on an external OIDC identity provider user verification. If configured, the full set of mappings must be configured. This value can only be set if createUser, updateUser, or updateVerificationUser is true.
     * @type {Array<OidcIdentityProviderAttributeMapping>}
     * @memberof OidcIdentityProviderParms
     */
    'userAttributeMappings'?: Array<OidcIdentityProviderAttributeMapping>;
    /**
     * The association between the claims returned from the external OIDC identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external OIDC identity provider user authentication. If configured, the full set of mappings must be configured. This value can only be set if authenticationEnabled is true.
     * @type {Array<OidcIdentityProviderUserAuthMatchMapping>}
     * @memberof OidcIdentityProviderParms
     */
    'userAuthMatchMappings'?: Array<OidcIdentityProviderUserAuthMatchMapping>;
    /**
     * The external OIDC identity provider claim used to find IDaaS users associated with an external OIDC identity provider user authentication. This value can only be set if authenticationEnabled is true.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'userClaim'?: string;
    /**
     * The association between the claims returned from the external OIDC identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external OIDC identity provider user verification. If configured, the full set of mappings must be configured. This value can only be set if verificationEnabled is true.
     * @type {Array<OidcIdentityProviderUserVerMatchMapping>}
     * @memberof OidcIdentityProviderParms
     */
    'userVerMatchMappings'?: Array<OidcIdentityProviderUserVerMatchMapping>;
    /**
     * The space separated list of user information claims to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'userinfoClaims'?: string;
    /**
     * The user information endpoint for the external OIDC identity provider.
     * @type {string}
     * @memberof OidcIdentityProviderParms
     */
    'userinfoEndpoint'?: string;
    /**
     * A flag indicating if the external OIDC identity provider can be used for user verification. If enabled, userVerMatchMappings is required.
     * @type {boolean}
     * @memberof OidcIdentityProviderParms
     */
    'verificationEnabled'?: boolean;
}
export declare const OidcIdentityProviderParmsClientAuthenticationMethodEnum: {
    readonly ClientSecretBasic: "CLIENT_SECRET_BASIC";
    readonly ClientSecretPost: "CLIENT_SECRET_POST";
};
export type OidcIdentityProviderParmsClientAuthenticationMethodEnum = typeof OidcIdentityProviderParmsClientAuthenticationMethodEnum[keyof typeof OidcIdentityProviderParmsClientAuthenticationMethodEnum];
export declare const OidcIdentityProviderParmsTypeEnum: {
    readonly Facebook: "FACEBOOK";
    readonly Generic: "GENERIC";
    readonly Google: "GOOGLE";
    readonly Idv: "IDV";
    readonly Microsoft: "MICROSOFT";
    readonly Sp: "SP";
    readonly Twitter: "TWITTER";
};
export type OidcIdentityProviderParmsTypeEnum = typeof OidcIdentityProviderParmsTypeEnum[keyof typeof OidcIdentityProviderParmsTypeEnum];
/**
 * An OidcIdentityProviderUserAuthMatchMapping maps a claim returned from an external OIDC identity provide user authentication to an IDaaS User user attribute for matching purposes.
 * @export
 * @interface OidcIdentityProviderUserAuthMatchMapping
 */
export interface OidcIdentityProviderUserAuthMatchMapping {
    /**
     * The name of the claim being mapped. This value must be provided when creating or modifying a user authentication match mapping.
     * @type {string}
     * @memberof OidcIdentityProviderUserAuthMatchMapping
     */
    'claim': string;
    /**
     * The UUID of the OIDC identity provider user authentication match mapping.
     * @type {string}
     * @memberof OidcIdentityProviderUserAuthMatchMapping
     */
    'id'?: string;
    /**
     * The UUID of the OIDC identity provider the user authentication match mapping belongs to.
     * @type {string}
     * @memberof OidcIdentityProviderUserAuthMatchMapping
     */
    'oidcIdentityProviderId'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof OidcIdentityProviderUserAuthMatchMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the IDaaS user attribute being mapped to. This value must be provided when creating or modifying a user authentication match mapping.
     * @type {string}
     * @memberof OidcIdentityProviderUserAuthMatchMapping
     */
    'userAttributeId': string;
}
/**
 * An OidcIdentityProviderUserVerMatchMapping maps a claim returned from an external OIDC identity provide user verification to an IDaaS User user attribute for matching purposes.
 * @export
 * @interface OidcIdentityProviderUserVerMatchMapping
 */
export interface OidcIdentityProviderUserVerMatchMapping {
    /**
     * The name of the claim being mapped. This value must be provided when creating or modifying a user verification match mapping.
     * @type {string}
     * @memberof OidcIdentityProviderUserVerMatchMapping
     */
    'claim': string;
    /**
     * The UUID of the OIDC identity provider user verification match mapping.
     * @type {string}
     * @memberof OidcIdentityProviderUserVerMatchMapping
     */
    'id'?: string;
    /**
     * The UUID of the OIDC identity provider the user verification match mapping belongs to.
     * @type {string}
     * @memberof OidcIdentityProviderUserVerMatchMapping
     */
    'oidcIdentityProviderId'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof OidcIdentityProviderUserVerMatchMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the IDaaS user attribute being mapped to. This value must be provided when creating or modifying a user verification match mapping.
     * @type {string}
     * @memberof OidcIdentityProviderUserVerMatchMapping
     */
    'userAttributeId': string;
}
/**
 * An attribute used to sort the result from a search.
 * @export
 * @interface OrderByAttribute
 */
export interface OrderByAttribute {
    /**
     * Identifies whether to order results in ascending order.
     * @type {boolean}
     * @memberof OrderByAttribute
     */
    'ascending': boolean;
    /**
     * Identifies the attribute.
     * @type {string}
     * @memberof OrderByAttribute
     */
    'name': string;
}
/**
 * Organization defines the attributes of an organization used in B2B scenarios.
 * @export
 * @interface Organization
 */
export interface Organization {
    /**
     * The description of the organization.
     * @type {string}
     * @memberof Organization
     */
    'description'?: string;
    /**
     * The display name of the organization.
     * @type {string}
     * @memberof Organization
     */
    'displayName': string;
    /**
     * The unique UUID assigned to the organization when it is created.
     * @type {string}
     * @memberof Organization
     */
    'id': string;
    /**
     * The URI of the logo to display when showing organizations.
     * @type {string}
     * @memberof Organization
     */
    'logoUri'?: string;
    /**
     * The name of the organization.
     * @type {string}
     * @memberof Organization
     */
    'name': string;
}
/**
 * Contains paging information and a page of organizations.
 * @export
 * @interface OrganizationPage
 */
export interface OrganizationPage {
    /**
     *
     * @type {Paging}
     * @memberof OrganizationPage
     */
    'paging'?: Paging;
    /**
     * A single page from the list of Organizations found.
     * @type {Array<Organization>}
     * @memberof OrganizationPage
     */
    'results': Array<Organization>;
}
/**
 * Parameters defining the new organization.
 * @export
 * @interface OrganizationParms
 */
export interface OrganizationParms {
    /**
     * The description of the organization.
     * @type {string}
     * @memberof OrganizationParms
     */
    'description'?: string;
    /**
     * The display name of the organization. This value must be provided when creating an organization.
     * @type {string}
     * @memberof OrganizationParms
     */
    'displayName'?: string;
    /**
     * The URI of the logo to display when showing organizations.
     * @type {string}
     * @memberof OrganizationParms
     */
    'logoUri'?: string;
    /**
     * The name of the organization. This value must be provided when creating an organization.
     * @type {string}
     * @memberof OrganizationParms
     */
    'name'?: string;
}
/**
 * Contains navigation information.
 * @export
 * @interface Paging
 */
export interface Paging {
    /**
     * The page limit used (1-100)
     * @type {number}
     * @memberof Paging
     */
    'limit': number;
    /**
     * The cursor pointing to the next page.
     * @type {string}
     * @memberof Paging
     */
    'nextCursor'?: string;
    /**
     * The cursor pointing to the previous page.
     * @type {string}
     * @memberof Paging
     */
    'prevCursor'?: string;
}
/**
 * Settings used to manage the Password Reset functionality.
 * @export
 * @interface PasswordResetSettings
 */
export interface PasswordResetSettings {
    /**
     * Flag indicates if ignore ip address for rba will be allowed or not.
     * @type {boolean}
     * @memberof PasswordResetSettings
     */
    'allowIgnoreIpAddressForRba'?: boolean;
    /**
     * The list of second factor authenticator types that can be used during a password reset operation.
     * @type {Array<string>}
     * @memberof PasswordResetSettings
     */
    'authenticators'?: Array<PasswordResetSettingsAuthenticatorsEnum>;
    /**
     * For a KBA authenticator, it is the number of questions that the user must answer--not supported if these settings are part of a Group Policy (not the Global Policy).
     * @type {number}
     * @memberof PasswordResetSettings
     * @deprecated
     */
    'challengeSize'?: number;
    /**
     * Indicates whether an email should be sent to notify the user account has been locked, unlocked, or an attempt of unlock has occurred.
     * @type {boolean}
     * @memberof PasswordResetSettings
     */
    'emailAccount'?: boolean;
    /**
     * Indicates if OTP can be sent to email.
     * @type {boolean}
     * @memberof PasswordResetSettings
     */
    'emailOtpEnabled'?: boolean;
    /**
     * Indicates whether password reset is enabled.
     * @type {boolean}
     * @memberof PasswordResetSettings
     */
    'enabled'?: boolean;
    /**
     * Groups that can perform a password reset operation--not supported if these settings are part of a Group Policy (not the Global Policy).
     * @type {Array<Group>}
     * @memberof PasswordResetSettings
     * @deprecated
     */
    'groups'?: Array<Group>;
    /**
     * Indicates whether two forms of second factor authentication must be completed before a password reset operation can be done.
     * @type {boolean}
     * @memberof PasswordResetSettings
     */
    'twoSecondFactorRequired'?: boolean;
    /**
     * Indicates whether the user account should be unlocked after a password reset operation is completed.
     * @type {boolean}
     * @memberof PasswordResetSettings
     */
    'unlockAccount'?: boolean;
    /**
     * Indicates the version of this model.
     * @type {number}
     * @memberof PasswordResetSettings
     */
    'version'?: number;
    /**
     * For a KBA authenticator, it is the number of questions that the user could answer incorrectly and still be considered a valid response--not supported if these settings are part of a Group Policy (not the Global Policy).
     * @type {number}
     * @memberof PasswordResetSettings
     * @deprecated
     */
    'wrongAnswersAllowed'?: number;
}
export declare const PasswordResetSettingsAuthenticatorsEnum: {
    readonly Machine: "MACHINE";
    readonly Password: "PASSWORD";
    readonly External: "EXTERNAL";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly PasswordAndSecondfactor: "PASSWORD_AND_SECONDFACTOR";
    readonly SmartLogin: "SMART_LOGIN";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly IdpAndSecondfactor: "IDP_AND_SECONDFACTOR";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type PasswordResetSettingsAuthenticatorsEnum = typeof PasswordResetSettingsAuthenticatorsEnum[keyof typeof PasswordResetSettingsAuthenticatorsEnum];
/**
 * PayToPrint entitlements of a tenant.
 * @export
 * @interface PayToPrint
 */
export interface PayToPrint {
    /**
     * Add on column to store PayToPrint addon
     * @type {string}
     * @memberof PayToPrint
     */
    'addOn'?: string;
    /**
     * The entitlements consumed since start date during the entitlement period.
     * @type {number}
     * @memberof PayToPrint
     */
    'consumed'?: number;
    /**
     * The date when the entitlement will end.
     * @type {string}
     * @memberof PayToPrint
     */
    'endDate'?: string;
    /**
     * The number of PayToPrint prints allowed during the period.
     * @type {number}
     * @memberof PayToPrint
     */
    'quantity'?: number;
    /**
     * The date when the entitlement starts.
     * @type {string}
     * @memberof PayToPrint
     */
    'startDate'?: string;
}
/**
 * Details about a permission assign to a role.
 * @export
 * @interface Permission
 */
export interface Permission {
    /**
     * The action to which this permission applies.
     * @type {string}
     * @memberof Permission
     */
    'actionType': PermissionActionTypeEnum;
    /**
     * The entity to which this permission applies.
     * @type {string}
     * @memberof Permission
     */
    'entityType': PermissionEntityTypeEnum;
    /**
     * The UUID of this permission.
     * @type {string}
     * @memberof Permission
     */
    'id': string;
    /**
     * The role type to which this permission applies.
     * @type {string}
     * @memberof Permission
     */
    'roleType': PermissionRoleTypeEnum;
}
export declare const PermissionActionTypeEnum: {
    readonly View: "VIEW";
    readonly Add: "ADD";
    readonly Edit: "EDIT";
    readonly Remove: "REMOVE";
    readonly All: "ALL";
};
export type PermissionActionTypeEnum = typeof PermissionActionTypeEnum[keyof typeof PermissionActionTypeEnum];
export declare const PermissionEntityTypeEnum: {
    readonly All: "ALL";
    readonly Subscribers: "SUBSCRIBERS";
    readonly Users: "USERS";
    readonly Applications: "APPLICATIONS";
    readonly Tokens: "TOKENS";
    readonly Roles: "ROLES";
    readonly Sproles: "SPROLES";
    readonly Contextrules: "CONTEXTRULES";
    readonly Authorizationgroups: "AUTHORIZATIONGROUPS";
    readonly Userattributes: "USERATTRIBUTES";
    readonly Userattributevalues: "USERATTRIBUTEVALUES";
    readonly Agents: "AGENTS";
    readonly Groups: "GROUPS";
    readonly Settings: "SETTINGS";
    readonly Directories: "DIRECTORIES";
    readonly Directorysync: "DIRECTORYSYNC";
    readonly Directoryconnections: "DIRECTORYCONNECTIONS";
    readonly Templates: "TEMPLATES";
    readonly Usersiteroles: "USERSITEROLES";
    readonly Reports: "REPORTS";
    readonly Bulkusers: "BULKUSERS";
    readonly Bulkgroups: "BULKGROUPS";
    readonly Userpasswords: "USERPASSWORDS";
    readonly Serviceproviders: "SERVICEPROVIDERS";
    readonly Serviceprovideraccounts: "SERVICEPROVIDERACCOUNTS";
    readonly Usermachines: "USERMACHINES";
    readonly Cas: "CAS";
    readonly Bulkhardwaretokens: "BULKHARDWARETOKENS";
    readonly Bulksmartcards: "BULKSMARTCARDS";
    readonly Digitalidconfigs: "DIGITALIDCONFIGS";
    readonly Digitalidconfigvariables: "DIGITALIDCONFIGVARIABLES";
    readonly Digitalidconfigcerttemps: "DIGITALIDCONFIGCERTTEMPS";
    readonly Digitalidconfigsans: "DIGITALIDCONFIGSANS";
    readonly Scdefns: "SCDEFNS";
    readonly Scdefnpivappletconfigs: "SCDEFNPIVAPPLETCONFIGS";
    readonly Scdefnvariables: "SCDEFNVARIABLES";
    readonly Smartcredentials: "SMARTCREDENTIALS";
    readonly Smartcredentialssignature: "SMARTCREDENTIALSSIGNATURE";
    readonly Usersproles: "USERSPROLES";
    readonly Expectedlocations: "EXPECTEDLOCATIONS";
    readonly Userlocations: "USERLOCATIONS";
    readonly Userrbasettings: "USERRBASETTINGS";
    readonly Spclientcredentials: "SPCLIENTCREDENTIALS";
    readonly Spmanagementplatform: "SPMANAGEMENTPLATFORM";
    readonly Entitlements: "ENTITLEMENTS";
    readonly Questions: "QUESTIONS";
    readonly Userquestions: "USERQUESTIONS";
    readonly Userquestionanswers: "USERQUESTIONANSWERS";
    readonly Userkbachallenges: "USERKBACHALLENGES";
    readonly Wordsynonyms: "WORDSYNONYMS";
    readonly Gateways: "GATEWAYS";
    readonly Gatewaycsrs: "GATEWAYCSRS";
    readonly Spusermgmt: "SPUSERMGMT";
    readonly Bulkidentityguard: "BULKIDENTITYGUARD";
    readonly Tempaccesscodes: "TEMPACCESSCODES";
    readonly Tempaccesscodecontents: "TEMPACCESSCODECONTENTS";
    readonly Grids: "GRIDS";
    readonly Gridcontents: "GRIDCONTENTS";
    readonly Fidotokens: "FIDOTOKENS";
    readonly Exportreports: "EXPORTREPORTS";
    readonly Customizationvariables: "CUSTOMIZATIONVARIABLES";
    readonly Blacklistedpasswords: "BLACKLISTEDPASSWORDS";
    readonly Spentitlements: "SPENTITLEMENTS";
    readonly Createtenant: "CREATETENANT";
    readonly Tenants: "TENANTS";
    readonly Archives: "ARCHIVES";
    readonly Certificates: "CERTIFICATES";
    readonly Intellitrustdesktops: "INTELLITRUSTDESKTOPS";
    readonly Activesync: "ACTIVESYNC";
    readonly Printers: "PRINTERS";
    readonly Issuance: "ISSUANCE";
    readonly Otps: "OTPS";
    readonly AdConnectorDirectories: "AD_CONNECTOR_DIRECTORIES";
    readonly AzureDirectories: "AZURE_DIRECTORIES";
    readonly Scheduledtasks: "SCHEDULEDTASKS";
    readonly Credentialdesigns: "CREDENTIALDESIGNS";
    readonly Enrollments: "ENROLLMENTS";
    readonly Bulkenrollments: "BULKENROLLMENTS";
    readonly Emailtemplates: "EMAILTEMPLATES";
    readonly Emailvariables: "EMAILVARIABLES";
    readonly Sendemail: "SENDEMAIL";
    readonly Sendscim: "SENDSCIM";
    readonly Sendazuread: "SENDAZUREAD";
    readonly Directorypassword: "DIRECTORYPASSWORD";
    readonly Transactionitems: "TRANSACTIONITEMS";
    readonly Transactionrules: "TRANSACTIONRULES";
    readonly Enrollmentdesigns: "ENROLLMENTDESIGNS";
    readonly HighAvailabilityGroups: "HIGH_AVAILABILITY_GROUPS";
    readonly Pkiaascredentials: "PKIAASCREDENTIALS";
    readonly Digitalidcertificates: "DIGITALIDCERTIFICATES";
    readonly Pivcontentsigner: "PIVCONTENTSIGNER";
    readonly Resourceserverapis: "RESOURCESERVERAPIS";
    readonly Resourceserverscopes: "RESOURCESERVERSCOPES";
    readonly Useroauthtokens: "USEROAUTHTOKENS";
    readonly Grouppolicies: "GROUPPOLICIES";
    readonly Oauthroles: "OAUTHROLES";
    readonly Identityproviders: "IDENTITYPROVIDERS";
    readonly Smartcards: "SMARTCARDS";
    readonly Iplists: "IPLISTS";
    readonly Domaincontrollercerts: "DOMAINCONTROLLERCERTS";
    readonly Otpproviders: "OTPPROVIDERS";
    readonly Preferredotpproviders: "PREFERREDOTPPROVIDERS";
    readonly Spidentityproviders: "SPIDENTITYPROVIDERS";
    readonly Pushcredentials: "PUSHCREDENTIALS";
    readonly Directorysearchattributes: "DIRECTORYSEARCHATTRIBUTES";
    readonly Directoryattributes: "DIRECTORYATTRIBUTES";
    readonly Riskengines: "RISKENGINES";
    readonly Scimprovisionings: "SCIMPROVISIONINGS";
    readonly Ratelimiting: "RATELIMITING";
    readonly Claims: "CLAIMS";
    readonly Contactverification: "CONTACTVERIFICATION";
    readonly Hostnamesettings: "HOSTNAMESETTINGS";
    readonly Magiclinks: "MAGICLINKS";
    readonly Magiclinkcontents: "MAGICLINKCONTENTS";
    readonly Authenticationflows: "AUTHENTICATIONFLOWS";
    readonly Face: "FACE";
    readonly Tokenactivationcontents: "TOKENACTIVATIONCONTENTS";
    readonly Passthrough: "PASSTHROUGH";
    readonly Policyoverride: "POLICYOVERRIDE";
    readonly Organizations: "ORGANIZATIONS";
    readonly Webhooks: "WEBHOOKS";
    readonly WebhookNotification: "WEBHOOK_NOTIFICATION";
    readonly Vcdefns: "VCDEFNS";
    readonly Vcs: "VCS";
    readonly Playintegritycredentials: "PLAYINTEGRITYCREDENTIALS";
    readonly Vpdefns: "VPDEFNS";
    readonly Acrs: "ACRS";
};
export type PermissionEntityTypeEnum = typeof PermissionEntityTypeEnum[keyof typeof PermissionEntityTypeEnum];
export declare const PermissionRoleTypeEnum: {
    readonly SiteAdministrator: "SITE_ADMINISTRATOR";
    readonly AccountManager: "ACCOUNT_MANAGER";
};
export type PermissionRoleTypeEnum = typeof PermissionRoleTypeEnum[keyof typeof PermissionRoleTypeEnum];
/**
 * Printer entitlements of a tenant.
 * @export
 * @interface PrinterEntitlement
 */
export interface PrinterEntitlement {
    /**
     * The entitlements consumed since start date during the entitlement period.
     * @type {number}
     * @memberof PrinterEntitlement
     */
    'consumed'?: number;
    /**
     * The date when the entitlement will end.
     * @type {string}
     * @memberof PrinterEntitlement
     */
    'endDate'?: string;
    /**
     * The number of FlashPass claims allowed during the period.
     * @type {number}
     * @memberof PrinterEntitlement
     */
    'quantity'?: number;
    /**
     * The date when the entitlement starts.
     * @type {string}
     * @memberof PrinterEntitlement
     */
    'startDate'?: string;
}
/**
 * Offline token settings to support offline token feature for IntelliTrust Desktop applications.
 * @export
 * @interface ProtectedOfflineSettings
 */
export interface ProtectedOfflineSettings {
    /**
     * Maximum number of IntelliTrust Desktops (or clients in general) that are allowed to be registered with a token for downloading OTPs.
     * @type {number}
     * @memberof ProtectedOfflineSettings
     */
    'protectedOfflineOTPMaxClients'?: number;
    /**
     * Maximum number of hours\' worth of offline OTPs that a client is allowed to possess.
     * @type {number}
     * @memberof ProtectedOfflineSettings
     */
    'protectedOfflineOTPMaxRefill'?: number;
    /**
     * Default number of hours\' worth of offline OTPs that is returned.
     * @type {number}
     * @memberof ProtectedOfflineSettings
     */
    'protectedOfflineOTPMinorRefill'?: number;
    /**
     * This controls the length of the private salt and is measured in bits. The values map as follows: Normal = 14, Strong = 17, and Very Strong = 20
     * @type {string}
     * @memberof ProtectedOfflineSettings
     */
    'protectedOfflineOTPProtection'?: ProtectedOfflineSettingsProtectedOfflineOTPProtectionEnum;
    /**
     * Defines whether tokens can be used offline.
     * @type {boolean}
     * @memberof ProtectedOfflineSettings
     */
    'protectedOfflineOTPSupport'?: boolean;
}
export declare const ProtectedOfflineSettingsProtectedOfflineOTPProtectionEnum: {
    readonly Normal: "NORMAL";
    readonly Strong: "STRONG";
    readonly Verystrong: "VERYSTRONG";
};
export type ProtectedOfflineSettingsProtectedOfflineOTPProtectionEnum = typeof ProtectedOfflineSettingsProtectedOfflineOTPProtectionEnum[keyof typeof ProtectedOfflineSettingsProtectedOfflineOTPProtectionEnum];
/**
 * Parameters needed to reset the token.
 * @export
 * @interface ResetParms
 */
export interface ResetParms {
    /**
     * An optional token response used to reset the token.
     * @type {string}
     * @memberof ResetParms
     */
    'response'?: string;
}
/**
 * A ResourceRule defines the information returned about a resource rule. A resource rule is used to determine what authentication is used to authenticate to the specified resource (aka application).
 * @export
 * @interface ResourceRule
 */
export interface ResourceRule {
    /**
     * Identifies how the resource rule acr access filter operates. NA: The resource rule will apply to all requests. This is the default value. NONE: The resource rule will only apply if no acrs were requested. ANY: The resource rule will only apply if acrs were requested. SPECIFIC: The resource rule will only apply if acrs were requested and one of the requested acrs matches one from a specified list.
     * @type {string}
     * @memberof ResourceRule
     */
    'acrFilter'?: ResourceRuleAcrFilterEnum;
    /**
     * The acrs associated with this resource rule if acrFilter is set to SPECIFIC. The resource rule will only apply if a requested acr is one of the specified acrs.
     * @type {Array<Acr>}
     * @memberof ResourceRule
     */
    'acrs'?: Array<Acr>;
    /**
     * The resource rules API version used to create or last update this resource rule. If the resource rule is at version 2, then it cannot be updated using a version 1 API.
     * @type {number}
     * @memberof ResourceRule
     */
    'apiVersion'?: ResourceRuleApiVersionEnum;
    /**
     *
     * @type {DateTimeContext}
     * @memberof ResourceRule
     */
    'dateTimeContext'?: DateTimeContext;
    /**
     * The description of the resource rule.
     * @type {string}
     * @memberof ResourceRule
     */
    'description'?: string;
    /**
     *
     * @type {DeviceCertificateContext}
     * @memberof ResourceRule
     */
    'deviceCertificateContext'?: DeviceCertificateContext;
    /**
     * A flag indicating if single-sign on is disabled for this resource rule.
     * @type {boolean}
     * @memberof ResourceRule
     */
    'disableSSO': boolean;
    /**
     * Identifies how the resource rule domain idp access filter operates. This is the default value. NA: The resource rule will apply to all requests. NONE: The resource rule will only apply if the user does not have a domain-based IDP. ANY: The resource rule will only apply if the user has a domain-based IDP. SPECIFIC: The resource rule will only apply if the user has a domain-based IDP and the user\'s domain matches one from a specified list.
     * @type {string}
     * @memberof ResourceRule
     */
    'domainIdpFilter'?: ResourceRuleDomainIdpFilterEnum;
    /**
     * The domain-based identity providers associated with this resource rule if domainIdpFilter is set to SPECIFIC. The resource rule will only apply to users using one of the specified domain-based identity providers.
     * @type {Array<IdentityProvider>}
     * @memberof ResourceRule
     */
    'domainIdps'?: Array<IdentityProvider>;
    /**
     * A flag indicating if this resource rule is enabled or not.  Only enabled resource rules are considered during authentication.
     * @type {boolean}
     * @memberof ResourceRule
     */
    'enabled'?: boolean;
    /**
     * The groups associated with this resource rule. The resource rule only applies to users in one of the specified groups. A resource rule must specify at least one group which can be the default All Groups if you want the resource rule to apply to all users.
     * @type {Array<Group>}
     * @memberof ResourceRule
     */
    'groups': Array<Group>;
    /**
     *
     * @type {AuthenticationFlow}
     * @memberof ResourceRule
     */
    'highRiskAuthenticationFlow'?: AuthenticationFlow;
    /**
     * A flag indicating if Smart Login is enabled for High risk. This parameter is deprecated, use the highRiskAuthenticationFlow attribute with v2 APIs.
     * @type {boolean}
     * @memberof ResourceRule
     * @deprecated
     */
    'highRiskEnableSmartLogin'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the risk score is High. This parameter is deprecated, use the highRiskAuthenticationFlow attribute with v2 APIs.
     * @type {string}
     * @memberof ResourceRule
     * @deprecated
     */
    'highRiskFirstStep'?: ResourceRuleHighRiskFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the risk score is High. This parameter is deprecated, use the highRiskAuthenticationFlow attribute with v2 APIs.
     * @type {Array<string>}
     * @memberof ResourceRule
     * @deprecated
     */
    'highRiskSecondStep'?: Array<ResourceRuleHighRiskSecondStepEnum>;
    /**
     * The unique UUID assigned to the resource rule when it is created.
     * @type {string}
     * @memberof ResourceRule
     */
    'id'?: string;
    /**
     *
     * @type {IpContext}
     * @memberof ResourceRule
     */
    'ipContext'?: IpContext;
    /**
     *
     * @type {KbaContext}
     * @memberof ResourceRule
     */
    'kbaContext'?: KbaContext;
    /**
     *
     * @type {LocationContext}
     * @memberof ResourceRule
     */
    'locationContext'?: LocationContext;
    /**
     *
     * @type {LocationHistoryContext}
     * @memberof ResourceRule
     */
    'locationHistoryContext'?: LocationHistoryContext;
    /**
     *
     * @type {AuthenticationFlow}
     * @memberof ResourceRule
     */
    'lowRiskAuthenticationFlow'?: AuthenticationFlow;
    /**
     * A flag indicating if Smart Login is enabled for Low risk. This parameter is deprecated, use the lowRiskAuthenticationFlow attribute with v2 APIs.
     * @type {boolean}
     * @memberof ResourceRule
     * @deprecated
     */
    'lowRiskEnableSmartLogin'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the risk score is Low. This parameter is deprecated, use the lowRiskAuthenticationFlow attribute with v2 APIs.
     * @type {string}
     * @memberof ResourceRule
     * @deprecated
     */
    'lowRiskFirstStep'?: ResourceRuleLowRiskFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the risk score is Low. This parameter is deprecated, use the lowRiskAuthenticationFlow attribute with v2 APIs.
     * @type {Array<string>}
     * @memberof ResourceRule
     * @deprecated
     */
    'lowRiskSecondStep'?: Array<ResourceRuleLowRiskSecondStepEnum>;
    /**
     * Risk scores below this value are considered Low risk.
     * @type {number}
     * @memberof ResourceRule
     */
    'lowRiskThreshold'?: number;
    /**
     *
     * @type {MachineContext}
     * @memberof ResourceRule
     */
    'machineContext'?: MachineContext;
    /**
     *
     * @type {AuthenticationFlow}
     * @memberof ResourceRule
     */
    'mediumRiskAuthenticationFlow'?: AuthenticationFlow;
    /**
     * A flag indicating if Smart Login is enabled for Medium risk. This parameter is deprecated, use the mediumRiskAuthenticationFlow attribute with v2 APIs.
     * @type {boolean}
     * @memberof ResourceRule
     * @deprecated
     */
    'mediumRiskEnableSmartLogin'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the risk score is Medium. This parameter is deprecated, use the mediumRiskAuthenticationFlow attribute with v2 APIs.
     * @type {string}
     * @memberof ResourceRule
     * @deprecated
     */
    'mediumRiskFirstStep'?: ResourceRuleMediumRiskFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the risk score is Medium. This parameter is deprecated, use the mediumRiskAuthenticationFlow attribute with v2 APIs.
     * @type {Array<string>}
     * @memberof ResourceRule
     * @deprecated
     */
    'mediumRiskSecondStep'?: Array<ResourceRuleMediumRiskSecondStepEnum>;
    /**
     * Risk scores below this value are considered Medium risk. Risk scores equal or greater than this value are considered High risk.
     * @type {number}
     * @memberof ResourceRule
     */
    'mediumRiskThreshold'?: number;
    /**
     * The name of the resource rule.
     * @type {string}
     * @memberof ResourceRule
     */
    'name': string;
    /**
     * The UUID of the resource to which this resource rule is assigned.
     * @type {string}
     * @memberof ResourceRule
     */
    'resourceId'?: string;
    /**
     * The name of the resource to which this resource rule is assigned.
     * @type {string}
     * @memberof ResourceRule
     */
    'resourceName'?: string;
    /**
     * If risk engine rules are defined, the transaction contexts specify the levels at which risk is applied to the authentication request if the corresponding risk engine rules trigger risk.
     * @type {Array<TransactionContext>}
     * @memberof ResourceRule
     */
    'riskEngineContexts'?: Array<TransactionContext>;
    /**
     * A flag indicating if second factor can be skipped if the user does not exist and the first factor is EXTERNAL.
     * @type {boolean}
     * @memberof ResourceRule
     */
    'skipSecondFactorIfUserNotExist': boolean;
    /**
     * A flag indicating if this resource rule enforces strict access. Strict access means that if this rule denies access, the user is denied access even if other resource rules allow access.
     * @type {boolean}
     * @memberof ResourceRule
     */
    'strictAccess': boolean;
    /**
     * A flag indicating if this resource rule is associated with a system resource including the Admin and User portals. A resource rule for a system resource cannot be deleted.  They can only be disabled if there is at least one enabled resource rule for the resource.
     * @type {boolean}
     * @memberof ResourceRule
     */
    'systemResourceContext'?: boolean;
    /**
     * If transaction details are specified during an authentication request, the transaction contexts specify the levels at which risk is applied to the authentication request if the corresponding transaction rules trigger risk. A maximum of two are allowed.
     * @type {Array<TransactionContext>}
     * @memberof ResourceRule
     */
    'transactionContexts'?: Array<TransactionContext>;
    /**
     *
     * @type {TravelVelocityContext}
     * @memberof ResourceRule
     */
    'travelVelocityContext'?: TravelVelocityContext;
}
export declare const ResourceRuleAcrFilterEnum: {
    readonly Na: "NA";
    readonly None: "NONE";
    readonly Any: "ANY";
    readonly Specific: "SPECIFIC";
};
export type ResourceRuleAcrFilterEnum = typeof ResourceRuleAcrFilterEnum[keyof typeof ResourceRuleAcrFilterEnum];
export declare const ResourceRuleApiVersionEnum: {
    readonly NUMBER_1: 1;
    readonly NUMBER_2: 2;
};
export type ResourceRuleApiVersionEnum = typeof ResourceRuleApiVersionEnum[keyof typeof ResourceRuleApiVersionEnum];
export declare const ResourceRuleDomainIdpFilterEnum: {
    readonly Na: "NA";
    readonly None: "NONE";
    readonly Any: "ANY";
    readonly Specific: "SPECIFIC";
};
export type ResourceRuleDomainIdpFilterEnum = typeof ResourceRuleDomainIdpFilterEnum[keyof typeof ResourceRuleDomainIdpFilterEnum];
export declare const ResourceRuleHighRiskFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleHighRiskFirstStepEnum = typeof ResourceRuleHighRiskFirstStepEnum[keyof typeof ResourceRuleHighRiskFirstStepEnum];
export declare const ResourceRuleHighRiskSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleHighRiskSecondStepEnum = typeof ResourceRuleHighRiskSecondStepEnum[keyof typeof ResourceRuleHighRiskSecondStepEnum];
export declare const ResourceRuleLowRiskFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleLowRiskFirstStepEnum = typeof ResourceRuleLowRiskFirstStepEnum[keyof typeof ResourceRuleLowRiskFirstStepEnum];
export declare const ResourceRuleLowRiskSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleLowRiskSecondStepEnum = typeof ResourceRuleLowRiskSecondStepEnum[keyof typeof ResourceRuleLowRiskSecondStepEnum];
export declare const ResourceRuleMediumRiskFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleMediumRiskFirstStepEnum = typeof ResourceRuleMediumRiskFirstStepEnum[keyof typeof ResourceRuleMediumRiskFirstStepEnum];
export declare const ResourceRuleMediumRiskSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleMediumRiskSecondStepEnum = typeof ResourceRuleMediumRiskSecondStepEnum[keyof typeof ResourceRuleMediumRiskSecondStepEnum];
/**
 * A ResourceRuleNameId contains a resource rule name and unique id.
 * @export
 * @interface ResourceRuleNameId
 */
export interface ResourceRuleNameId {
    /**
     * The unique UUID assigned to the resource rule when it is created.
     * @type {string}
     * @memberof ResourceRuleNameId
     */
    'id': string;
    /**
     * The name of the resource rule.
     * @type {string}
     * @memberof ResourceRuleNameId
     */
    'name': string;
}
/**
 * Parameters defining the new resource rule including the resource to which it applies.
 * @export
 * @interface ResourceRuleParms
 */
export interface ResourceRuleParms {
    /**
     * Identifies how the resource rule acr access filter operates. NA: The resource rule will apply to all requests. This is the default value. NONE: The resource rule will only apply if no acrs were requested. ANY: The resource rule will only apply if acrs were requested. SPECIFIC: The resource rule will only apply if acrs were requested and one of the requested acrs matches one from a specified list.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'acrFilter'?: ResourceRuleParmsAcrFilterEnum;
    /**
     * The UUIDs of acrs associated with this resource rule if acrFilter is set to SPECIFIC. The resource rule will only apply if a requested acr is one of the specified acrs. If acrFilter is set to SPECIFIC, at least one acrId should be specified otherwise the resource rule will never apply.
     * @type {Array<string>}
     * @memberof ResourceRuleParms
     */
    'acrIds'?: Array<string>;
    /**
     *
     * @type {DateTimeContext}
     * @memberof ResourceRuleParms
     */
    'dateTimeContext'?: DateTimeContext;
    /**
     * The description of the resource rule.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'description'?: string;
    /**
     *
     * @type {DeviceCertificateContext}
     * @memberof ResourceRuleParms
     */
    'deviceCertificateContext'?: DeviceCertificateContext;
    /**
     * A flag indicating if single-sign on is disabled for this resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'disableSSO'?: boolean;
    /**
     * Identifies how the resource rule domain idp access filter operates. This is the default value. NA: The resource rule will apply to all requests. NONE: The resource rule will only apply if the user does not have a domain-based IDP. ANY: The resource rule will only apply if the user has a domain-based IDP. SPECIFIC: The resource rule will only apply if the user has a domain-based IDP and the user\'s domain matches one from a specified list.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'domainIdpFilter'?: ResourceRuleParmsDomainIdpFilterEnum;
    /**
     * The UUIDs of domain-based identity providers associated with this resource rule if domainIdpFilter is set to SPECIFIC. The resource rule will only apply to users using one of the specified domain-based identity providers. If domainIdpFilter is set to SPECIFIC, at least one domainIdpId should be specified otherwise the resource rule will never apply.
     * @type {Array<string>}
     * @memberof ResourceRuleParms
     */
    'domainIdpIds'?: Array<string>;
    /**
     * A flag indicating if this resource rule is enabled or not.  Only enabled resource rules are considered during authentication.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'enabled'?: boolean;
    /**
     * The UUIDs of groups associated with this resource rule. The resource rule will only apply to users in one of the specified groups. When creating a resource rule, if no groupsIds are specified, the resource rule will apply to all users.
     * @type {Array<string>}
     * @memberof ResourceRuleParms
     */
    'groupIds'?: Array<string>;
    /**
     * The groups associated with this resource rule. The resource rule only applies to users in one of the specified groups. If no groups are specified, the resource rule applies to all users.  This attribute is ignored if the groupIds attribute is specified. The groupIds attribute should be used instead.
     * @type {Array<Group>}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'groups'?: Array<Group>;
    /**
     * The UUID of the authentication flow to use when the risk score is High. Required with v2 APIs.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'highRiskAuthenticationFlow'?: string;
    /**
     * A flag indicating if Smart Login is enabled for High risk.This parameter is deprecated, use the highRiskAuthenticationFlow attribute with v2 APIs.
     * @type {boolean}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'highRiskEnableSmartLogin'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the risk score is High. Only the values NONE, EXTERNAL, PASSWORD or DENY should be used for highRiskFirstStep. Other values are defined for backwards compatibility. Some values are not supported by all application types.This parameter is deprecated, use the highRiskAuthenticationFlow attribute with v2 APIs.
     * @type {string}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'highRiskFirstStep'?: ResourceRuleParmsHighRiskFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the risk score is High. Some values are not supported by all application types.This parameter is deprecated, use the highRiskAuthenticationFlow attribute with v2 APIs.
     * @type {Array<string>}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'highRiskSecondStep'?: Array<ResourceRuleParmsHighRiskSecondStepEnum>;
    /**
     *
     * @type {IpContext}
     * @memberof ResourceRuleParms
     */
    'ipContext'?: IpContext;
    /**
     *
     * @type {KbaContext}
     * @memberof ResourceRuleParms
     */
    'kbaContext'?: KbaContext;
    /**
     *
     * @type {LocationContext}
     * @memberof ResourceRuleParms
     */
    'locationContext'?: LocationContext;
    /**
     *
     * @type {LocationHistoryContext}
     * @memberof ResourceRuleParms
     */
    'locationHistoryContext'?: LocationHistoryContext;
    /**
     * The UUID of the authentication flow to use when the risk score is Low. Required with v2 APIs.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'lowRiskAuthenticationFlow'?: string;
    /**
     * A flag indicating if Smart Login is enabled for Low risk.This parameter is deprecated, use the lowRiskAuthenticationFlow attribute with v2 APIs.
     * @type {boolean}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'lowRiskEnableSmartLogin'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the risk score is Low.  Only the values NONE, EXTERNAL, PASSWORD should be used for lowRiskFirstStep.  The value DENY can only be specified for low risk authentication when using Smart Login, otherwise DENY can only be specified for medium or high risk values. Other values are defined for backwards compatibility. Some values are not supported by all application types. This parameter is deprecated, use the lowRiskAuthenticationFlow attribute with v2 APIs.
     * @type {string}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'lowRiskFirstStep'?: ResourceRuleParmsLowRiskFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the risk score is Low. Some values are not supported by all application types. This parameter is deprecated, use the lowRiskAuthenticationFlow attribute with v2 APIs.
     * @type {Array<string>}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'lowRiskSecondStep'?: Array<ResourceRuleParmsLowRiskSecondStepEnum>;
    /**
     * Risk scores below this value are considered Low risk.
     * @type {number}
     * @memberof ResourceRuleParms
     */
    'lowRiskThreshold'?: number;
    /**
     *
     * @type {MachineContext}
     * @memberof ResourceRuleParms
     */
    'machineContext'?: MachineContext;
    /**
     * The UUID of the authentication flow to use when the risk score is Medium. Required with v2 APIs.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'mediumRiskAuthenticationFlow'?: string;
    /**
     * A flag indicating if Smart Login is enabled for Medium risk.This parameter is deprecated, use the mediumRiskAuthenticationFlow attribute with v2 APIs.
     * @type {boolean}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'mediumRiskEnableSmartLogin'?: boolean;
    /**
     * The authenticator type to use in the first step of a two-step authentication scenario when the risk score is Medium. Only the values NONE, EXTERNAL, PASSWORD or DENY should be used for mediumRiskFirstStep. Other values are defined for backwards compatibility.  Some values are not supported by all application types. This parameter is deprecated, use the mediumRiskAuthenticationFlow attribute with v2 APIs.
     * @type {string}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'mediumRiskFirstStep'?: ResourceRuleParmsMediumRiskFirstStepEnum;
    /**
     * The authenticator type to use during in the second step of a two-step authentication scenario when the risk score is Medium. Some values are not supported by all application types.This parameter is deprecated, use the mediumRiskAuthenticationFlow attribute with v2 APIs.
     * @type {Array<string>}
     * @memberof ResourceRuleParms
     * @deprecated
     */
    'mediumRiskSecondStep'?: Array<ResourceRuleParmsMediumRiskSecondStepEnum>;
    /**
     * Risk scores below this value are considered Medium risk. Risk scores equal or greater than this value are considered High risk.
     * @type {number}
     * @memberof ResourceRuleParms
     */
    'mediumRiskThreshold'?: number;
    /**
     * The name of the resource rule.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'name'?: string;
    /**
     * When updating a resource rule, if removeDateTimeContext is set to true, the existing date time context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeDateTimeContext'?: boolean;
    /**
     * When updating a resource rule, if removeDeviceCertificateContext is set to true, the existing device certificate context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeDeviceCertificateContext'?: boolean;
    /**
     * When updating a resource rule, if removeIPContext is set to true, the existing IP context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeIPContext'?: boolean;
    /**
     * When updating a resource rule, if removeKBAContext is set to true, the existing KBA context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeKBAContext'?: boolean;
    /**
     * When updating a resource rule, if removeLocationContext is set to true, the existing location context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeLocationContext'?: boolean;
    /**
     * When updating a resource rule, if removeLocationHistoryContext is set to true, the existing location history context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeLocationHistoryContext'?: boolean;
    /**
     * When updating a resource rule, if removeMachineContext is set to true, the existing machine context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeMachineContext'?: boolean;
    /**
     * When updating a resource rule, if removeTravelVelocityContext is set to true, the existing travel velocity context is removed. This attribute is ignored when creating a resource rule.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'removeTravelVelocityContext'?: boolean;
    /**
     * The UUID of the resource to which this resource rule is assigned. This value is only used when creating a resource rule.
     * @type {string}
     * @memberof ResourceRuleParms
     */
    'resourceId'?: string;
    /**
     * If risk engine rules are defined, the transaction contexts specify the level at which risk is applied to the authentication request if the corresponding risk engine rules trigger risk. If set to null, no changes are made. If set to an empty set, transaction contexts are removed.
     * @type {Array<TransactionContext>}
     * @memberof ResourceRuleParms
     */
    'riskEngineContexts'?: Array<TransactionContext>;
    /**
     * A flag indicating if second factor will be skipped if user doesn\'t exist when the first factor was EXTERNAL.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'skipSecondFactorIfUserNotExist'?: boolean;
    /**
     * A flag indicating if this resource rule enforces strict access. Strict access means that if this rule denies access, the user is denied access even if other resource rules allow access.
     * @type {boolean}
     * @memberof ResourceRuleParms
     */
    'strictAccess'?: boolean;
    /**
     * If transaction details are specified during an authentication request, the transaction contexts specify the level at which risk is applied to the authentication request if the corresponding transaction rules trigger risk. A maximum of two are allowed. If set to null, no changes are made. If set to an empty set, transaction contexts are removed.
     * @type {Array<TransactionContext>}
     * @memberof ResourceRuleParms
     */
    'transactionContexts'?: Array<TransactionContext>;
    /**
     *
     * @type {TravelVelocityContext}
     * @memberof ResourceRuleParms
     */
    'travelVelocityContext'?: TravelVelocityContext;
}
export declare const ResourceRuleParmsAcrFilterEnum: {
    readonly Na: "NA";
    readonly None: "NONE";
    readonly Any: "ANY";
    readonly Specific: "SPECIFIC";
};
export type ResourceRuleParmsAcrFilterEnum = typeof ResourceRuleParmsAcrFilterEnum[keyof typeof ResourceRuleParmsAcrFilterEnum];
export declare const ResourceRuleParmsDomainIdpFilterEnum: {
    readonly Na: "NA";
    readonly None: "NONE";
    readonly Any: "ANY";
    readonly Specific: "SPECIFIC";
};
export type ResourceRuleParmsDomainIdpFilterEnum = typeof ResourceRuleParmsDomainIdpFilterEnum[keyof typeof ResourceRuleParmsDomainIdpFilterEnum];
export declare const ResourceRuleParmsHighRiskFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleParmsHighRiskFirstStepEnum = typeof ResourceRuleParmsHighRiskFirstStepEnum[keyof typeof ResourceRuleParmsHighRiskFirstStepEnum];
export declare const ResourceRuleParmsHighRiskSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleParmsHighRiskSecondStepEnum = typeof ResourceRuleParmsHighRiskSecondStepEnum[keyof typeof ResourceRuleParmsHighRiskSecondStepEnum];
export declare const ResourceRuleParmsLowRiskFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleParmsLowRiskFirstStepEnum = typeof ResourceRuleParmsLowRiskFirstStepEnum[keyof typeof ResourceRuleParmsLowRiskFirstStepEnum];
export declare const ResourceRuleParmsLowRiskSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleParmsLowRiskSecondStepEnum = typeof ResourceRuleParmsLowRiskSecondStepEnum[keyof typeof ResourceRuleParmsLowRiskSecondStepEnum];
export declare const ResourceRuleParmsMediumRiskFirstStepEnum: {
    readonly None: "NONE";
    readonly External: "EXTERNAL";
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly Otp: "OTP";
    readonly Token: "TOKEN";
    readonly Tokenpush: "TOKENPUSH";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly SmartLogin: "SMART_LOGIN";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Deny: "DENY";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleParmsMediumRiskFirstStepEnum = typeof ResourceRuleParmsMediumRiskFirstStepEnum[keyof typeof ResourceRuleParmsMediumRiskFirstStepEnum];
export declare const ResourceRuleParmsMediumRiskSecondStepEnum: {
    readonly None: "NONE";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type ResourceRuleParmsMediumRiskSecondStepEnum = typeof ResourceRuleParmsMediumRiskSecondStepEnum[keyof typeof ResourceRuleParmsMediumRiskSecondStepEnum];
/**
 * Information about a role.
 * @export
 * @interface Role
 */
export interface Role {
    /**
     * A flag indicating if administrators with this role can manage all roles and all users.
     * @type {boolean}
     * @memberof Role
     */
    'allRoles'?: boolean;
    /**
     * A flag indicating if this role is one of the default roles.
     * @type {boolean}
     * @memberof Role
     */
    'defaultRole'?: boolean;
    /**
     * The description of the role.
     * @type {string}
     * @memberof Role
     */
    'description'?: string;
    /**
     * The UUIDs of groups associated with this role when Group Management is DEFINED. This attribute is ignored if Group Management is ALL or OWN.
     * @type {Array<string>}
     * @memberof Role
     */
    'groupIds'?: Array<string>;
    /**
     * The type of the group management. Defaults to ALL if not provided.
     * @type {string}
     * @memberof Role
     */
    'groupManagement'?: RoleGroupManagementEnum;
    /**
     * The UUID of the role.
     * @type {string}
     * @memberof Role
     */
    'id'?: string;
    /**
     * If allRoles is false, this attribute lists the roles and administrators in these roles that can be administered by administrators with this role.  Administrators will also be able to manage end users.
     * @type {Array<Role>}
     * @memberof Role
     */
    'managedRoles'?: Array<Role>;
    /**
     * The name of the role.
     * @type {string}
     * @memberof Role
     */
    'name': string;
    /**
     * A list of the permissions assigned to this role.
     * @type {Array<Permission>}
     * @memberof Role
     */
    'permissions'?: Array<Permission>;
    /**
     * The type of the role.
     * @type {string}
     * @memberof Role
     */
    'roleType': RoleRoleTypeEnum;
    /**
     * A flag indicating if this role is a super administrator.
     * @type {boolean}
     * @memberof Role
     */
    'superAdministrator'?: boolean;
}
export declare const RoleGroupManagementEnum: {
    readonly All: "ALL";
    readonly Defined: "DEFINED";
    readonly Own: "OWN";
};
export type RoleGroupManagementEnum = typeof RoleGroupManagementEnum[keyof typeof RoleGroupManagementEnum];
export declare const RoleRoleTypeEnum: {
    readonly SiteAdministrator: "SITE_ADMINISTRATOR";
    readonly AccountManager: "ACCOUNT_MANAGER";
};
export type RoleRoleTypeEnum = typeof RoleRoleTypeEnum[keyof typeof RoleRoleTypeEnum];
/**
 * The role information returned from a list role operation.
 * @export
 * @interface RoleUser
 */
export interface RoleUser {
    /**
     * A flag indicating if this role is one of the default roles.
     * @type {boolean}
     * @memberof RoleUser
     */
    'defaultRole'?: boolean;
    /**
     * The UUID of the role.
     * @type {string}
     * @memberof RoleUser
     */
    'id'?: string;
    /**
     * The description of the role.
     * @type {string}
     * @memberof RoleUser
     */
    'roleDescription'?: string;
    /**
     * The name of the role
     * @type {string}
     * @memberof RoleUser
     */
    'roleName': string;
    /**
     * The number of users in this role.
     * @type {number}
     * @memberof RoleUser
     */
    'usersInRole'?: number;
}
/**
 * Information returned about a smart credential definition.
 * @export
 * @interface SCDefn
 */
export interface SCDefn {
    /**
     * A flag indicating if smart credentials using this SC definition must have a card digital id config defined.
     * @type {boolean}
     * @memberof SCDefn
     */
    'cardDigitalIdConfigRequired'?: boolean;
    /**
     * A flag indicating if smart credentials using this SC definition must have a card holder digital id config defined.
     * @type {boolean}
     * @memberof SCDefn
     */
    'cardHolderDigitalIdConfigRequired'?: boolean;
    /**
     * Requirements for digits in card PINs for smart credentials for this SC Defn.
     * @type {string}
     * @memberof SCDefn
     */
    'cardPinDigits'?: SCDefnCardPinDigitsEnum;
    /**
     * The length of card PINs generated for smart credentials for this SC Defn.
     * @type {number}
     * @memberof SCDefn
     */
    'cardPinLength'?: number;
    /**
     * Requirements for lowercase letters in card PINs for smart credentials for this SC Defn.
     * @type {string}
     * @memberof SCDefn
     */
    'cardPinLower'?: SCDefnCardPinLowerEnum;
    /**
     * The maximum number of times a wrong PIN can be entered incorrectly before it locks out the smart credential.
     * @type {number}
     * @memberof SCDefn
     */
    'cardPinMaxAttempts'?: number;
    /**
     * The maximum PIN length of card PINs for smart credentials for this SC Defn.
     * @type {number}
     * @memberof SCDefn
     */
    'cardPinMaxLength'?: number;
    /**
     * The maximum number of times a PIN can be used before it must be changed after it is set by an administrator.
     * @type {number}
     * @memberof SCDefn
     */
    'cardPinMaxUsesAfterAdminReset'?: number;
    /**
     * The minimum PIN length of card PINs for smart credentials for this SC Defn.
     * @type {number}
     * @memberof SCDefn
     */
    'cardPinMinLength'?: number;
    /**
     * Requirements for special characters in card PINs for smart credentials for this SC Defn.
     * @type {string}
     * @memberof SCDefn
     */
    'cardPinSpecial'?: SCDefnCardPinSpecialEnum;
    /**
     * Requirements for uppercase letters in card PINs for smart credentials for this SC Defn.
     * @type {string}
     * @memberof SCDefn
     */
    'cardPinUpper'?: SCDefnCardPinUpperEnum;
    /**
     * The UUID of the default card digital id config.  If not set, there is no default.
     * @type {string}
     * @memberof SCDefn
     */
    'defaultCardDigitalIdConfigId'?: string;
    /**
     * The UUID of the default card holder digital id config.  If not set, there is no default.
     * @type {string}
     * @memberof SCDefn
     */
    'defaultCardHolderDigitalIdConfigId'?: string;
    /**
     * A flag indicating if this is the default SC Defn.
     * @type {boolean}
     * @memberof SCDefn
     */
    'defaultSCDefn'?: boolean;
    /**
     * The UUID of this SC Defn.
     * @type {string}
     * @memberof SCDefn
     */
    'id'?: string;
    /**
     * The lifetime (in months) of smart credentials created for this SC Defn.
     * @type {number}
     * @memberof SCDefn
     */
    'lifetime'?: number;
    /**
     * The name of this SC Defn.
     * @type {string}
     * @memberof SCDefn
     */
    'name'?: string;
    /**
     * The UUID of the PIV applet configuration associated with this smart credential definition.
     * @type {string}
     * @memberof SCDefn
     */
    'pivAppletConfigId'?: string;
    /**
     * The UUID of the CA that defines the PIV Content Signer for this SC definition. If not set, the PIV Content Signer is derived from the digital id configs.
     * @type {string}
     * @memberof SCDefn
     */
    'pivContentSignerCAId'?: string;
    /**
     * Smart Credential Definition Variables defined for this SC Defn.
     * @type {Array<SCDefnVariable>}
     * @memberof SCDefn
     */
    'variables'?: Array<SCDefnVariable>;
}
export declare const SCDefnCardPinDigitsEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnCardPinDigitsEnum = typeof SCDefnCardPinDigitsEnum[keyof typeof SCDefnCardPinDigitsEnum];
export declare const SCDefnCardPinLowerEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnCardPinLowerEnum = typeof SCDefnCardPinLowerEnum[keyof typeof SCDefnCardPinLowerEnum];
export declare const SCDefnCardPinSpecialEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnCardPinSpecialEnum = typeof SCDefnCardPinSpecialEnum[keyof typeof SCDefnCardPinSpecialEnum];
export declare const SCDefnCardPinUpperEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnCardPinUpperEnum = typeof SCDefnCardPinUpperEnum[keyof typeof SCDefnCardPinUpperEnum];
/**
 * Parameters to get Smart Credential Definitions by Name.
 * @export
 * @interface SCDefnGetParms
 */
export interface SCDefnGetParms {
    /**
     * The name of the smart credential definition to be retrieved.
     * @type {string}
     * @memberof SCDefnGetParms
     */
    'name': string;
}
/**
 * SC Defn Variables define the details about variables defined in the SC Defn.
 * @export
 * @interface SCDefnVariable
 */
export interface SCDefnVariable {
    /**
     * The default value of this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'defaultValue'?: string;
    /**
     * A flag indicating if values for this variable should be displayed.
     * @type {boolean}
     * @memberof SCDefnVariable
     */
    'displayable'?: boolean;
    /**
     * A flag indicating if the initial value for this variable should be generated.
     * @type {boolean}
     * @memberof SCDefnVariable
     */
    'generate'?: boolean;
    /**
     * A length value used when generating values for this variable.
     * @type {number}
     * @memberof SCDefnVariable
     */
    'generateLength'?: number;
    /**
     * The UUID of this SC Defn Variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'id'?: string;
    /**
     * A flag indicating if values for this variable can be modified.
     * @type {boolean}
     * @memberof SCDefnVariable
     */
    'modifiable'?: boolean;
    /**
     * The name of this SC Defn Variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'name'?: string;
    /**
     * A value that specifies the order of this variable with respect to the other variables in the SC Defn.
     * @type {number}
     * @memberof SCDefnVariable
     */
    'order'?: number;
    /**
     * Optional prompt to be used when prompting for a value for this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'prompt'?: string;
    /**
     * A flag indicating if a value is required for this variable.
     * @type {boolean}
     * @memberof SCDefnVariable
     */
    'required'?: boolean;
    /**
     * A value specifying restrictions on digits appearing in values of this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'restrictionDigits'?: SCDefnVariableRestrictionDigitsEnum;
    /**
     * A value specifying restrictions on lowercase characters appearing in values of this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'restrictionLower'?: SCDefnVariableRestrictionLowerEnum;
    /**
     * A value indicating a maximum for values of this variable. How this is enforced depends on the variable type.
     * @type {number}
     * @memberof SCDefnVariable
     */
    'restrictionMax'?: number;
    /**
     * A value indicating a minimum for values of this variable. How this is enforced depends on the variable type.
     * @type {number}
     * @memberof SCDefnVariable
     */
    'restrictionMin'?: number;
    /**
     * A value specifying a regex that values of this variable must match.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'restrictionRegex'?: string;
    /**
     * A value specifying restrictions on special characters appearing in values of this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'restrictionSpecial'?: SCDefnVariableRestrictionSpecialEnum;
    /**
     * A value specifying restrictions on uppercase characters appearing in values of this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'restrictionUpper'?: SCDefnVariableRestrictionUpperEnum;
    /**
     * The UUID of the SC Defn that owns this variable definition.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'scDefnId'?: string;
    /**
     * The type of this variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'type'?: SCDefnVariableTypeEnum;
    /**
     * A flag indicating if values of this variable must be unique and if so within what scope.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'uniqueness'?: SCDefnVariableUniquenessEnum;
    /**
     * A value that allows a variable to be defined unique in the scope of another variable.
     * @type {string}
     * @memberof SCDefnVariable
     */
    'uniquenessScopeId'?: string;
}
export declare const SCDefnVariableRestrictionDigitsEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnVariableRestrictionDigitsEnum = typeof SCDefnVariableRestrictionDigitsEnum[keyof typeof SCDefnVariableRestrictionDigitsEnum];
export declare const SCDefnVariableRestrictionLowerEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnVariableRestrictionLowerEnum = typeof SCDefnVariableRestrictionLowerEnum[keyof typeof SCDefnVariableRestrictionLowerEnum];
export declare const SCDefnVariableRestrictionSpecialEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnVariableRestrictionSpecialEnum = typeof SCDefnVariableRestrictionSpecialEnum[keyof typeof SCDefnVariableRestrictionSpecialEnum];
export declare const SCDefnVariableRestrictionUpperEnum: {
    readonly Allowed: "ALLOWED";
    readonly Required: "REQUIRED";
    readonly NotAllowed: "NOT_ALLOWED";
    readonly NotSet: "NOT_SET";
};
export type SCDefnVariableRestrictionUpperEnum = typeof SCDefnVariableRestrictionUpperEnum[keyof typeof SCDefnVariableRestrictionUpperEnum];
export declare const SCDefnVariableTypeEnum: {
    readonly String: "STRING";
    readonly Boolean: "BOOLEAN";
    readonly Integer: "INTEGER";
    readonly Uuid: "UUID";
};
export type SCDefnVariableTypeEnum = typeof SCDefnVariableTypeEnum[keyof typeof SCDefnVariableTypeEnum];
export declare const SCDefnVariableUniquenessEnum: {
    readonly Global: "GLOBAL";
    readonly User: "USER";
    readonly None: "NONE";
};
export type SCDefnVariableUniquenessEnum = typeof SCDefnVariableUniquenessEnum[keyof typeof SCDefnVariableUniquenessEnum];
/**
 * SCVariableValues store variable values for a smart credential.
 * @export
 * @interface SCVariableValue
 */
export interface SCVariableValue {
    /**
     *
     * @type {SCDefnVariable}
     * @memberof SCVariableValue
     */
    'scDefnVariable'?: SCDefnVariable;
    /**
     * The UUID of the SC Defn Variable that defines the variable.
     * @type {string}
     * @memberof SCVariableValue
     */
    'scDefnVariableId'?: string;
    /**
     * The variable value.
     * @type {string}
     * @memberof SCVariableValue
     */
    'value'?: string;
}
/**
 * An SamlIdentityProvider defines the information returned about an external SAML identity provider for use with user authentication or user verification.
 * @export
 * @interface SamlIdentityProvider
 */
export interface SamlIdentityProvider {
    /**
     * The space separated list of authentication context request values to request as part of the external SAML identity provider user authentication or user verification request.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'acrValues'?: string;
    /**
     * The assertion consumer service URL provided to the external SAML identity provider. Leave empty to use default value.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'acsUrl'?: string;
    /**
     * A flag indicating if the external SAML identity provider can be used for user authentication.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'authenticationEnabled'?: boolean;
    /**
     * The URI of the logo to display on the login button for this external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'buttonImage'?: string;
    /**
     * The unique text to display on the login button for this external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'buttonText'?: string;
    /**
     * A flag indicating if the user should be created after authenticating to the external SAML identity provider if it doesn\'t exist. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if authenticationEnabled is true.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'createUser'?: boolean;
    /**
     * The space separated list of domains associated with the external SAML identity provider for use with user authentication.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'domains'?: string;
    /**
     * A flag indicating if a force authentication should always be requested as part of the external SAML identity provider user authentication or user verification request.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'forceAuthn'?: boolean;
    /**
     * The UUIDs of groups that will be assigned to users created after an external SAML identity provider user authentication. An empty list means the user will be assigned to All Groups. If configured, the full set of groups must be configured. This value is used if createUser is true.
     * @type {Array<string>}
     * @memberof SamlIdentityProvider
     */
    'groupIds'?: Array<string>;
    /**
     * The association between a specified claim returned from the external SAML identity provider and IDaaS groups. This mapping is used to associated IDaaS groups when a user is created or modified based on an external SAML identity provider user authentication or when it is modified based on an external SAML identity provider user verification. This value is used if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'groupMapping'?: string;
    /**
     * The UUID of the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'id'?: string;
    /**
     * The issuer, or IDP Entity ID, for the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'issuer'?: string;
    /**
     * The unique name of the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'name'?: string;
    /**
     * The name ID policy format to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'nameIdPolicyFormat'?: string;
    /**
     * The UUIDs of organizations that will be assigned to users created after an external SAML identity provider user authentication. If configured, the full set of organizations must be configured. This value is used if createUser is true.
     * @type {Array<string>}
     * @memberof SamlIdentityProvider
     */
    'organizationIds'?: Array<string>;
    /**
     * A flag indicating if the SAML Assertion of the external SAML identity provider should be signed and verified.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'requireAssertionSignature'?: boolean;
    /**
     * A flag indicating if the SAML Response of the external SAML identity provider should be signed and verified.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'requireResponseSignature'?: boolean;
    /**
     * The association between a specified claim returned from the external SAML identity provider and an IDaaS role. This mapping is used to associated an IDaaS role when a user is created or modified based on an external SAML identity provider user authentication or when it is modified based on an external SAML identity provider user verification. This value is used if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'roleMapping'?: string;
    /**
     * The single logout endpoint for the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'sloEndpoint'?: string;
    /**
     * The SP entity ID provided to the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'spEntityId'?: string;
    /**
     * The single signon endpoint for the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'ssoEndpoint'?: string;
    /**
     * The type of the external SAML identity provider. Once created, this value cannot be updated.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'type'?: SamlIdentityProviderTypeEnum;
    /**
     * A flag indicating if the user should be updated after authenticating to the external SAML identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if authenticationEnabled is true.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'updateUser'?: boolean;
    /**
     * A flag indicating if the user should be updated after user verification to the external SAML identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value is used if verificationEnabled is true.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'updateUserVerification'?: boolean;
    /**
     * The IDaaS user attribute ID used to find IDaaS users associated with an external SAML identity provider user authentication. This value is used if authenticationEnabled is true.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'userAttributeId'?: string;
    /**
     * The association between the claims returned from the external SAML identity provider and IDaaS user attributes. These attributes are used to populate user attributes when it is created or modified based on an external SAML identity provider user authentication or when it is modified based on an external SAML identity provider user verification. If configured, the full set of mappings must be configured. This value is used if createUser, updateUser, or updateVerificationUser is true.
     * @type {Array<SamlIdentityProviderAttributeMapping>}
     * @memberof SamlIdentityProvider
     */
    'userAttributeMappings'?: Array<SamlIdentityProviderAttributeMapping>;
    /**
     * The association between the claims returned from the external SAML identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external SAML identity provider user authentication. If configured, the full set of mappings must be configured. This value is used if authenticationEnabled is true.
     * @type {Array<SamlIdentityProviderUserAuthMatchMapping>}
     * @memberof SamlIdentityProvider
     */
    'userAuthMatchMappings'?: Array<SamlIdentityProviderUserAuthMatchMapping>;
    /**
     * The external SAML identity provider claim (attribute) used to find IDaaS users associated with an external SAML identity provider user authentication. This value is used if authenticationEnabled is true.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'userClaim'?: string;
    /**
     * If user name parameter is set to NameID, the value of the format of this value.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'userNameFormat'?: string;
    /**
     * The name of the parameter to include with the SAML authentication request that will contain the value of the user\'s userid. Set the value to NameID to pass this value as part of the SAML Request message.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'userNameParameter'?: string;
    /**
     * The association between the claims returned from the external SAML identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external SAML identity provider user verification. If configured, the full set of mappings must be configured. This value is used if verificationEnabled is true.
     * @type {Array<SamlIdentityProviderUserVerMatchMapping>}
     * @memberof SamlIdentityProvider
     */
    'userVerMatchMappings'?: Array<SamlIdentityProviderUserVerMatchMapping>;
    /**
     * The verification certificate used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'verificationCertificate'?: string;
    /**
     * The verification certificate2 used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'verificationCertificate2'?: string;
    /**
     * The verification certificate2 DN used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'verificationCertificate2DN'?: string;
    /**
     * The verification certificate2 expiry date used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'verificationCertificate2ExpiryDate'?: string;
    /**
     * The verification certificate DN used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'verificationCertificateDN'?: string;
    /**
     * The verification certificate expiry date used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProvider
     */
    'verificationCertificateExpiryDate'?: string;
    /**
     * A flag indicating if the external SAML identity provider can be used for user verification.
     * @type {boolean}
     * @memberof SamlIdentityProvider
     */
    'verificationEnabled'?: boolean;
}
export declare const SamlIdentityProviderTypeEnum: {
    readonly Generic: "GENERIC";
};
export type SamlIdentityProviderTypeEnum = typeof SamlIdentityProviderTypeEnum[keyof typeof SamlIdentityProviderTypeEnum];
/**
 * An SamlIdentityProviderAttributeMapping maps a claim (attribute) returned from an external SAML identity provider user authentication or user verification to an IDaaS user attribute.
 * @export
 * @interface SamlIdentityProviderAttributeMapping
 */
export interface SamlIdentityProviderAttributeMapping {
    /**
     * The name of the claim (attribute) being mapped. This value must be provided when creating or modifying an attribute mapping.
     * @type {string}
     * @memberof SamlIdentityProviderAttributeMapping
     */
    'claim': string;
    /**
     * The UUID of the SAML identity provider attribute mapping.
     * @type {string}
     * @memberof SamlIdentityProviderAttributeMapping
     */
    'id'?: string;
    /**
     * The UUID of the SAML identity provider the attribute mapping belongs to.
     * @type {string}
     * @memberof SamlIdentityProviderAttributeMapping
     */
    'samlIdentityProviderId'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof SamlIdentityProviderAttributeMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the IDaaS user attribute being mapped to. This value must be provided when creating or modifying an attribute mapping.
     * @type {string}
     * @memberof SamlIdentityProviderAttributeMapping
     */
    'userAttributeId': string;
}
/**
 * An SamlIdentityProviderParms defines the information passed to Identity as a Service when creating or modifying an external SAML identity provider for use with user authentication or user verification.
 * @export
 * @interface SamlIdentityProviderParms
 */
export interface SamlIdentityProviderParms {
    /**
     * The space separated list of authentication context request values to request as part of the external SAML identity provider user authentication or user verification request.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'acrValues'?: string;
    /**
     * The assertion consumer service URL provided to the external SAML identity provider. Leave empty to use default value.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'acsUrl'?: string;
    /**
     * A flag indicating if the external SAML identity provider can be used for user authentication. If enabled, userAttributeId and userClaim are required.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'authenticationEnabled'?: boolean;
    /**
     * The URI of the logo to display on the login button for this external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'buttonImage'?: string;
    /**
     * The unique text to display on the login button for this external SAML identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'buttonText'?: string;
    /**
     * A flag indicating if the user should be created after authenticating to the external SAML identity provider if it doesn\'t exist. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value can only be set if authenticationEnabled is true.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'createUser'?: boolean;
    /**
     * The space separated list of domains associated with the external SAML identity provider for use with user authentication.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'domains'?: string;
    /**
     * A flag indicating if a force authentication should always be requested as part of the external SAML identity provider user authentication or user verification request.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'forceAuthn'?: boolean;
    /**
     * The UUIDs of groups that will be assigned to users created after an external SAML identity provider user authentication. An empty list means the user will be assigned to All Groups. If configured, the full set of groups must be configured. This value can only be set if createUser is true.
     * @type {Array<string>}
     * @memberof SamlIdentityProviderParms
     */
    'groupIds'?: Array<string>;
    /**
     * The association between a specified claim returned from the external SAML identity provider and IDaaS groups. This mapping is used to associated IDaaS groups when a user is created or modified based on an external SAML identity provider user authentication or when it is modified based on an external SAML identity provider user verification. This value can only be set if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'groupMapping'?: string;
    /**
     * The issuer, or IDP Entity ID, for the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'issuer'?: string;
    /**
     * The unique name of the external SAML identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'name'?: string;
    /**
     * The name ID policy format to request as part of the external OIDC identity provider user authentication or user verification request.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'nameIdPolicyFormat'?: string;
    /**
     * The UUIDs of organizations that will be assigned to users created after an external SAML identity provider user authentication. If configured, the full set of organizations must be configured. This value can only be set if createUser is true.
     * @type {Array<string>}
     * @memberof SamlIdentityProviderParms
     */
    'organizationIds'?: Array<string>;
    /**
     * A flag indicating if the SAML Assertion of the external SAML identity provider should be signed and verified.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'requireAssertionSignature'?: boolean;
    /**
     * A flag indicating if the SAML Response of the external SAML identity provider should be signed and verified.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'requireResponseSignature'?: boolean;
    /**
     * The association between a specified claim returned from the external SAML identity provider and an IDaaS role. This mapping is used to associated an IDaaS role when a user is created or modified based on an external SAML identity provider user authentication or when it is modified based on an external SAML identity provider user verification. This value can only be set if createUser, updateUser, or updateVerificationUser is true.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'roleMapping'?: string;
    /**
     * The single logout endpoint for the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'sloEndpoint'?: string;
    /**
     * The SP entity ID provided to the external SAML identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'spEntityId'?: string;
    /**
     * The single signon endpoint for the external SAML identity provider. This value is required when creating an IDP.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'ssoEndpoint'?: string;
    /**
     * The type of the external SAML identity provider. Once created, this value cannot be updated. This value is required when creating an IDP.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'type'?: SamlIdentityProviderParmsTypeEnum;
    /**
     * A flag indicating if the user should be updated after authenticating to the external SAML identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value can only be set if authenticationEnabled is true.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'updateUser'?: boolean;
    /**
     * A flag indicating if the user should be updated after user verification to the external SAML identity provider if it exists. The user attributes specified by the userAttributeMappings attribute are used to populate the user in IDaaS. This value can only be set if verificationEnabled is true.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'updateUserVerification'?: boolean;
    /**
     * The IDaaS user attribute ID used to find IDaaS users associated with an external SAML identity provider user authentication. This value can only be set if authenticationEnabled is true.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'userAttributeId'?: string;
    /**
     * The association between the claims returned from the external SAML identity provider and IDaaS user attributes. These attributes are used to populate user attributes when it is created or modified based on an external SAML identity provider user authentication or when it is modified based on an external SAML identity provider user verification. If configured, the full set of mappings must be configured. This value can only be set if createUser, updateUser, or updateVerificationUser is true.
     * @type {Array<SamlIdentityProviderAttributeMapping>}
     * @memberof SamlIdentityProviderParms
     */
    'userAttributeMappings'?: Array<SamlIdentityProviderAttributeMapping>;
    /**
     * The association between the claims returned from the external SAML identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external SAML identity provider user authentication. If configured, the full set of mappings must be configured. This value can only be set if authenticationEnabled is true.
     * @type {Array<SamlIdentityProviderUserAuthMatchMapping>}
     * @memberof SamlIdentityProviderParms
     */
    'userAuthMatchMappings'?: Array<SamlIdentityProviderUserAuthMatchMapping>;
    /**
     * The external SAML identity provider claim (attribute) used to find IDaaS users associated with an external SAML identity provider user authentication. This value can only be set if authenticationEnabled is true.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'userClaim'?: string;
    /**
     * If user name parameter is set to NameID, the value of the format of this value.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'userNameFormat'?: string;
    /**
     * The name of the parameter to include with the SAML authentication request that will contain the value of the user\'s userid. Set the value to NameID to pass this value as part of the SAML Request message.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'userNameParameter'?: string;
    /**
     * The association between the claims returned from the external SAML identity provider and IDaaS user attributes. These attributes are used to match an existing IDaaS user based on an external SAML identity provider user verification. If configured, the full set of mappings must be configured. This value can only be set if verificationEnabled is true.
     * @type {Array<SamlIdentityProviderUserVerMatchMapping>}
     * @memberof SamlIdentityProviderParms
     */
    'userVerMatchMappings'?: Array<SamlIdentityProviderUserVerMatchMapping>;
    /**
     * The verification certificate used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'verificationCertificate'?: string;
    /**
     * The verification certificate2 used with the external SAML identity provider.
     * @type {string}
     * @memberof SamlIdentityProviderParms
     */
    'verificationCertificate2'?: string;
    /**
     * A flag indicating if the external SAML identity provider can be used for user verification. If enabled, userVerMatchMappings is required.
     * @type {boolean}
     * @memberof SamlIdentityProviderParms
     */
    'verificationEnabled'?: boolean;
}
export declare const SamlIdentityProviderParmsTypeEnum: {
    readonly Generic: "GENERIC";
};
export type SamlIdentityProviderParmsTypeEnum = typeof SamlIdentityProviderParmsTypeEnum[keyof typeof SamlIdentityProviderParmsTypeEnum];
/**
 * An SamlIdentityProviderUserAuthMatchMapping maps a claim (attribute) returned from an external SAML identity provide user authentication to an IDaaS User user attribute for matching purposes.
 * @export
 * @interface SamlIdentityProviderUserAuthMatchMapping
 */
export interface SamlIdentityProviderUserAuthMatchMapping {
    /**
     * The name of the claim (attribute) being mapped. This value must be provided when creating or modifying a user authentication match mapping.
     * @type {string}
     * @memberof SamlIdentityProviderUserAuthMatchMapping
     */
    'claim': string;
    /**
     * The UUID of the SAML identity provider user authentication match mapping.
     * @type {string}
     * @memberof SamlIdentityProviderUserAuthMatchMapping
     */
    'id'?: string;
    /**
     * The UUID of the SAML identity provider the user authentication match mapping belongs to.
     * @type {string}
     * @memberof SamlIdentityProviderUserAuthMatchMapping
     */
    'samlIdentityProviderId'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof SamlIdentityProviderUserAuthMatchMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the IDaaS user attribute being mapped to. This value must be provided when creating or modifying a user authentication match mapping.
     * @type {string}
     * @memberof SamlIdentityProviderUserAuthMatchMapping
     */
    'userAttributeId': string;
}
/**
 * An SamlIdentityProviderUserVerMatchMapping maps a claim (attribute) returned from an external SAML identity provide user verification to an IDaaS User user attribute for matching purposes.
 * @export
 * @interface SamlIdentityProviderUserVerMatchMapping
 */
export interface SamlIdentityProviderUserVerMatchMapping {
    /**
     * The name of the claim (attribute) being mapped. This value must be provided when creating or modifying a user verification match mapping.
     * @type {string}
     * @memberof SamlIdentityProviderUserVerMatchMapping
     */
    'claim': string;
    /**
     * The UUID of the SAML identity provider user verification match mapping.
     * @type {string}
     * @memberof SamlIdentityProviderUserVerMatchMapping
     */
    'id'?: string;
    /**
     * The UUID of the SAML identity provider the user verification match mapping belongs to.
     * @type {string}
     * @memberof SamlIdentityProviderUserVerMatchMapping
     */
    'samlIdentityProviderId'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof SamlIdentityProviderUserVerMatchMapping
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the IDaaS user attribute being mapped to. This value must be provided when creating or modifying a user verification match mapping.
     * @type {string}
     * @memberof SamlIdentityProviderUserVerMatchMapping
     */
    'userAttributeId': string;
}
/**
 * The parameters specifying what is to be changed.
 * @export
 * @interface SdpParms
 */
export interface SdpParms {
    /**
     * Type of action to be performed on active sync devices
     * @type {string}
     * @memberof SdpParms
     */
    'actionType': SdpParmsActionTypeEnum;
    /**
     * List of device IDs to be Allowed/Blocked.
     * @type {Array<string>}
     * @memberof SdpParms
     */
    'deviceId'?: Array<string>;
}
export declare const SdpParmsActionTypeEnum: {
    readonly Allow: "ALLOW";
    readonly Block: "BLOCK";
};
export type SdpParmsActionTypeEnum = typeof SdpParmsActionTypeEnum[keyof typeof SdpParmsActionTypeEnum];
/**
 * SdpResponse
 * @export
 * @interface SdpResponse
 */
export interface SdpResponse {
    /**
     * Current access state of the device.
     * @type {string}
     * @memberof SdpResponse
     */
    'DeviceAccessState'?: string;
    /**
     * Unique device id.
     * @type {string}
     * @memberof SdpResponse
     */
    'DeviceId'?: string;
    /**
     * Device type.
     * @type {string}
     * @memberof SdpResponse
     */
    'DeviceType'?: string;
    /**
     * Agent used to configure ActiveSync on the device.
     * @type {string}
     * @memberof SdpResponse
     */
    'DeviceUserAgent'?: string;
    /**
     * Friendly name of the device.
     * @type {string}
     * @memberof SdpResponse
     */
    'FriendlyName'?: string;
    /**
     * Unique id
     * @type {string}
     * @memberof SdpResponse
     */
    'id'?: string;
    /**
     * The last time devices were fetched.
     * @type {string}
     * @memberof SdpResponse
     */
    'lastUpdate'?: string;
}
/**
 * A SearchBase defines the information returned about a directory search base.
 * @export
 * @interface SearchBase
 */
export interface SearchBase {
    /**
     * The UUID of the Directory the seachbase belongs to.
     * @type {string}
     * @memberof SearchBase
     */
    'directoryId'?: string;
    /**
     * Whether or not an empty searchbase is empty?
     * @type {boolean}
     * @memberof SearchBase
     */
    'emptySearchBase'?: boolean;
    /**
     * The UUID of the searchbase.
     * @type {string}
     * @memberof SearchBase
     */
    'id'?: string;
    /**
     * The searchbase node.
     * @type {string}
     * @memberof SearchBase
     */
    'node'?: string;
    /**
     * Whether or not a sub-tree is included?
     * @type {boolean}
     * @memberof SearchBase
     */
    'subsearchbasesIncluded'?: boolean;
}
/**
 * An attribute used during paging and/or searching.
 * @export
 * @interface SearchByAttribute
 */
export interface SearchByAttribute {
    /**
     * Identifies the attribute we are searching for.
     * @type {string}
     * @memberof SearchByAttribute
     */
    'name': string;
    /**
     * Identifies the operator.
     * @type {string}
     * @memberof SearchByAttribute
     */
    'operator': SearchByAttributeOperatorEnum;
    /**
     * Identifies the value of the attribute we are searching for.
     * @type {string}
     * @memberof SearchByAttribute
     */
    'value'?: string;
}
export declare const SearchByAttributeOperatorEnum: {
    readonly Equals: "EQUALS";
    readonly NotEquals: "NOT_EQUALS";
    readonly Contains: "CONTAINS";
    readonly NotContains: "NOT_CONTAINS";
    readonly StartsWith: "STARTS_WITH";
    readonly EndsWith: "ENDS_WITH";
    readonly GreaterThan: "GREATER_THAN";
    readonly GreaterThanOrEqual: "GREATER_THAN_OR_EQUAL";
    readonly LessThan: "LESS_THAN";
    readonly LessThanOrEqual: "LESS_THAN_OR_EQUAL";
    readonly In: "IN";
    readonly Exists: "EXISTS";
    readonly NotExists: "NOT_EXISTS";
};
export type SearchByAttributeOperatorEnum = typeof SearchByAttributeOperatorEnum[keyof typeof SearchByAttributeOperatorEnum];
/**
 * Parameters specifying search attributes or a cursor to get results from a previous search.
 * @export
 * @interface SearchParms
 */
export interface SearchParms {
    /**
     * Users search only: additional, non-core attributes to include in the returned object. Attribute names are specific to the returned object.
     * @type {Array<string>}
     * @memberof SearchParms
     */
    'attributes'?: Array<string>;
    /**
     * Identifies the page to return when paging over a result set--if present, search by / order by attributes are ignored.
     * @type {string}
     * @memberof SearchParms
     */
    'cursor'?: string;
    /**
     * Identifies the maximum number of items to include in a page (1-100).
     * @type {number}
     * @memberof SearchParms
     */
    'limit'?: number;
    /**
     *
     * @type {OrderByAttribute}
     * @memberof SearchParms
     */
    'orderByAttribute'?: OrderByAttribute;
    /**
     * Identifies attributes for searching purposes. Some end-points have pre-defined values and ignore this attribute.
     * @type {Array<SearchByAttribute>}
     * @memberof SearchParms
     */
    'searchByAttributes'?: Array<SearchByAttribute>;
}
/**
 * A bundle identifies a set of capabilities available to a tenant.
 * @export
 * @interface ServiceBundle
 */
export interface ServiceBundle {
    /**
     * Identifies the bundle.
     * @type {string}
     * @memberof ServiceBundle
     */
    'bundleType': ServiceBundleBundleTypeEnum;
    /**
     * A number that allows to sort bundles of the same category by precedence. Read-only currently.
     * @type {number}
     * @memberof ServiceBundle
     */
    'rank'?: number;
    /**
     * An identifier used to report usage for this bundle.
     * @type {string}
     * @memberof ServiceBundle
     */
    'usageReportId'?: string;
}
export declare const ServiceBundleBundleTypeEnum: {
    readonly Advanced: "ADVANCED";
    readonly Essentials: "ESSENTIALS";
    readonly Professional: "PROFESSIONAL";
    readonly Enterprise: "ENTERPRISE";
    readonly Api: "API";
    readonly Standard: "STANDARD";
    readonly Plus: "PLUS";
    readonly Premium: "PREMIUM";
    readonly Consumer: "CONSUMER";
};
export type ServiceBundleBundleTypeEnum = typeof ServiceBundleBundleTypeEnum[keyof typeof ServiceBundleBundleTypeEnum];
/**
 * Information returned when a client queries the service IP addresses.
 * @export
 * @interface ServiceIPAddresses
 */
export interface ServiceIPAddresses {
    /**
     * A list of IP addresses.
     * @type {Array<string>}
     * @memberof ServiceIPAddresses
     */
    'addresses'?: Array<string>;
    /**
     * The date this list of IP addresses was last updated.
     * @type {string}
     * @memberof ServiceIPAddresses
     */
    'lastUpdated'?: string;
}
/**
 * Information returned from the service about a smart credential.
 * @export
 * @interface SmartCredential
 */
export interface SmartCredential {
    /**
     * A list of administration actions currently allowed for this smart credential.
     * @type {Array<string>}
     * @memberof SmartCredential
     */
    'allowedActions'?: Array<SmartCredentialAllowedActionsEnum>;
    /**
     *
     * @type {DigitalIdConfig}
     * @memberof SmartCredential
     */
    'cardDigitalConfig'?: DigitalIdConfig;
    /**
     * The UUID of the Card Digital Id config of this smart credential. If not set, the smart credential will not have a Card Digital Id.
     * @type {string}
     * @memberof SmartCredential
     */
    'cardDigitalConfigId'?: string;
    /**
     * Indicates if the card digitalid config is required or not.
     * @type {boolean}
     * @memberof SmartCredential
     */
    'cardDigitalConfigRequired'?: boolean;
    /**
     *
     * @type {DigitalIdConfig}
     * @memberof SmartCredential
     */
    'cardHolderDigitalConfig'?: DigitalIdConfig;
    /**
     * The UUID of the Card Holder Digital Id config of this smart credential. If not set, the smart credential will not have a Card Holder Digital Id.
     * @type {string}
     * @memberof SmartCredential
     */
    'cardHolderDigitalConfigId'?: string;
    /**
     * Indicates if the card holder digitalid config is required or not.
     * @type {boolean}
     * @memberof SmartCredential
     */
    'cardHolderDigitalConfigRequired'?: boolean;
    /**
     * A list of certificates associated with this smart credential.
     * @type {Array<DigitalIdCert>}
     * @memberof SmartCredential
     */
    'certificates'?: Array<DigitalIdCert>;
    /**
     * The chip id of the smart card set when the smart credential is encoded.
     * @type {string}
     * @memberof SmartCredential
     */
    'chipId'?: string;
    /**
     * A flag indicating if the smart credential is enrolled on a verified device.
     * @type {boolean}
     * @memberof SmartCredential
     */
    'deviceVerified': boolean;
    /**
     * A list of digital ids associated with this smart credential.
     * @type {Array<DigitalId>}
     * @memberof SmartCredential
     */
    'digitalIds'?: Array<DigitalId>;
    /**
     * For smart credentials that have failed to encode, the encode message stores a message providing information about the failure.
     * @type {string}
     * @memberof SmartCredential
     */
    'encodeMsg'?: string;
    /**
     * The encode state of a smart credential indicates if encoding has started, completed successfully or failed.
     * @type {string}
     * @memberof SmartCredential
     */
    'encodeState'?: SmartCredentialEncodeStateEnum;
    /**
     * The enrollment state of a smart credential indicates if all of the necessary enrollment values have been collected. Only smart credentials in the ENROLLED state can be activated.
     * @type {string}
     * @memberof SmartCredential
     */
    'enrollState'?: SmartCredentialEnrollStateEnum;
    /**
     * For issued smart credentials, the expiry date is the date on which the smart credential will expire.
     * @type {string}
     * @memberof SmartCredential
     */
    'expiryDate'?: string;
    /**
     * The unique UUID assigned to the smart credential when it is created.
     * @type {string}
     * @memberof SmartCredential
     */
    'id'?: string;
    /**
     * The date on which the smart credential was issued.
     * @type {string}
     * @memberof SmartCredential
     */
    'issueDate'?: string;
    /**
     * A flag indicating if notification is enabled for this smart credential.
     * @type {boolean}
     * @memberof SmartCredential
     */
    'notifyEnabled'?: boolean;
    /**
     * The platform of the Mobile SC application on which this smart credential was encoded.
     * @type {string}
     * @memberof SmartCredential
     */
    'platform'?: string;
    /**
     * The UUID of the Smart Credential Definition that defines this smart credential.
     * @type {string}
     * @memberof SmartCredential
     */
    'scDefnId'?: string;
    /**
     * The name of the smart credential definition of this smart credential.
     * @type {string}
     * @memberof SmartCredential
     */
    'scDefnName'?: string;
    /**
     * The unique serial number of the smart credential generated when it is created.
     * @type {string}
     * @memberof SmartCredential
     */
    'serialNumber'?: string;
    /**
     * The state of the smart credential.  Only smart credentials in the ACTIVE state can be used for authentication.
     * @type {string}
     * @memberof SmartCredential
     */
    'state'?: SmartCredentialStateEnum;
    /**
     * The UUID of the user that owns this smart credential.
     * @type {string}
     * @memberof SmartCredential
     */
    'userId'?: string;
    /**
     * The user Id of the user that owns this smart credential.
     * @type {string}
     * @memberof SmartCredential
     */
    'userUserId'?: string;
    /**
     * Variable values for this smart credential
     * @type {Array<SCVariableValue>}
     * @memberof SmartCredential
     */
    'variableValues'?: Array<SCVariableValue>;
    /**
     * The version of the Mobile SC application on which this smart credential was encoded.
     * @type {string}
     * @memberof SmartCredential
     */
    'version'?: string;
}
export declare const SmartCredentialAllowedActionsEnum: {
    readonly Activate: "ACTIVATE";
    readonly Reactivate: "REACTIVATE";
    readonly Update: "UPDATE";
    readonly Unassign: "UNASSIGN";
    readonly Unblock: "UNBLOCK";
    readonly Enable: "ENABLE";
    readonly Disable: "DISABLE";
    readonly Delete: "DELETE";
    readonly ViewCertificates: "VIEW_CERTIFICATES";
};
export type SmartCredentialAllowedActionsEnum = typeof SmartCredentialAllowedActionsEnum[keyof typeof SmartCredentialAllowedActionsEnum];
export declare const SmartCredentialEncodeStateEnum: {
    readonly EncodeStart: "ENCODE_START";
    readonly EncodeDone: "ENCODE_DONE";
    readonly EncodeError: "ENCODE_ERROR";
};
export type SmartCredentialEncodeStateEnum = typeof SmartCredentialEncodeStateEnum[keyof typeof SmartCredentialEncodeStateEnum];
export declare const SmartCredentialEnrollStateEnum: {
    readonly Enrolling: "ENROLLING";
    readonly Enrolled: "ENROLLED";
};
export type SmartCredentialEnrollStateEnum = typeof SmartCredentialEnrollStateEnum[keyof typeof SmartCredentialEnrollStateEnum];
export declare const SmartCredentialStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type SmartCredentialStateEnum = typeof SmartCredentialStateEnum[keyof typeof SmartCredentialStateEnum];
/**
 * Parameters specifying the new state for the smart credential.
 * @export
 * @interface SmartCredentialChangeStateParms
 */
export interface SmartCredentialChangeStateParms {
    /**
     * The new state of the smart credential.
     * @type {string}
     * @memberof SmartCredentialChangeStateParms
     */
    'state'?: SmartCredentialChangeStateParmsStateEnum;
}
export declare const SmartCredentialChangeStateParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type SmartCredentialChangeStateParmsStateEnum = typeof SmartCredentialChangeStateParmsStateEnum[keyof typeof SmartCredentialChangeStateParmsStateEnum];
/**
 * Parameters for the smart credential complete sign operation.
 * @export
 * @interface SmartCredentialCompleteSignParms
 */
export interface SmartCredentialCompleteSignParms {
    /**
     * For smart credential push Signature the transaction can be canceled by setting cancel to true.
     * @type {boolean}
     * @memberof SmartCredentialCompleteSignParms
     */
    'cancelTransaction'?: boolean;
    /**
     * The transactionId for smart credential complete sign operation.
     * @type {string}
     * @memberof SmartCredentialCompleteSignParms
     */
    'transactionId'?: string;
}
/**
 * Information returned from the smart credential complete sign operation.
 * @export
 * @interface SmartCredentialCompleteSignResponse
 */
export interface SmartCredentialCompleteSignResponse {
    /**
     * The smart credential complete sign base-64 encoded certificate Chain.
     * @type {Array<string>}
     * @memberof SmartCredentialCompleteSignResponse
     */
    'certChain'?: Array<string>;
    /**
     * The smart credential complete sign response digestSignature.
     * @type {string}
     * @memberof SmartCredentialCompleteSignResponse
     */
    'digestSignature'?: string;
    /**
     * The smart credential complete sign response status.
     * @type {string}
     * @memberof SmartCredentialCompleteSignResponse
     */
    'status'?: SmartCredentialCompleteSignResponseStatusEnum;
}
export declare const SmartCredentialCompleteSignResponseStatusEnum: {
    readonly Confirm: "CONFIRM";
    readonly Concern: "CONCERN";
    readonly Cancel: "CANCEL";
    readonly NoResponse: "NO_RESPONSE";
};
export type SmartCredentialCompleteSignResponseStatusEnum = typeof SmartCredentialCompleteSignResponseStatusEnum[keyof typeof SmartCredentialCompleteSignResponseStatusEnum];
/**
 * Parameters for the smart credential to be created including the UUID of the user for which the smart credential will be created.
 * @export
 * @interface SmartCredentialParms
 */
export interface SmartCredentialParms {
    /**
     * The UUID of the Card Digital Id config of this smart credential. It can be specified in either the create or update operations.  If not set, the smart credential will not have a Card Digital Id.
     * @type {string}
     * @memberof SmartCredentialParms
     */
    'cardDigitalConfigId'?: string;
    /**
     * The UUID of the Card Holder Digital Id config of this smart credential. It can be specified in either the create or update operations.  If not set, the smart credential will not have a Card Holder Digital Id.
     * @type {string}
     * @memberof SmartCredentialParms
     */
    'cardHolderDigitalConfigId'?: string;
    /**
     * The UUID of the Smart Credential Definition that defines this smart credential. It must be specified when the smart credential is created and can be updated for an existing smart credential.
     * @type {string}
     * @memberof SmartCredentialParms
     */
    'scDefnId'?: string;
    /**
     * The state of the smart credential.  Only smart credentials in the ACTIVE state can be used for authentication.
     * @type {string}
     * @memberof SmartCredentialParms
     */
    'state'?: SmartCredentialParmsStateEnum;
    /**
     * The UUID of the user that owns this smart credential. This value must be specified when the smart credential is created and is read-only after that.
     * @type {string}
     * @memberof SmartCredentialParms
     */
    'userId'?: string;
    /**
     * When creating or modifying a smart credential, the variable values specify a list of variable values to be set.
     * @type {Array<SCVariableValue>}
     * @memberof SmartCredentialParms
     */
    'variableValues'?: Array<SCVariableValue>;
}
export declare const SmartCredentialParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type SmartCredentialParmsStateEnum = typeof SmartCredentialParmsStateEnum[keyof typeof SmartCredentialParmsStateEnum];
/**
 * Parameters for the smart credential start sign operation.
 * @export
 * @interface SmartCredentialStartSignParms
 */
export interface SmartCredentialStartSignParms {
    /**
     * The digest value that will be signed by the smart credential.
     * @type {string}
     * @memberof SmartCredentialStartSignParms
     */
    'digest'?: string;
    /**
     * The hashing algorithm that will be used to sign the digest value. It must be one of the values \"SHA-1\", \"SHA-224\", \"SHA-256\", \"SHA-384\", \"SHA-512\".
     * @type {string}
     * @memberof SmartCredentialStartSignParms
     */
    'digestHashAlg'?: string;
    /**
     * Specify which key on the smart credential is used to sign the digest. If not specified it defaults to PIV_AUTHENTICATION.
     * @type {string}
     * @memberof SmartCredentialStartSignParms
     */
    'digestKey'?: SmartCredentialStartSignParmsDigestKeyEnum;
    /**
     * The smart credential push signature challenge that appears in the user\'s mobile application.
     * @type {string}
     * @memberof SmartCredentialStartSignParms
     */
    'summary'?: string;
}
export declare const SmartCredentialStartSignParmsDigestKeyEnum: {
    readonly PivAuthentication: "PIV_AUTHENTICATION";
    readonly DigitalSignature: "DIGITAL_SIGNATURE";
    readonly CardAuthentication: "CARD_AUTHENTICATION";
};
export type SmartCredentialStartSignParmsDigestKeyEnum = typeof SmartCredentialStartSignParmsDigestKeyEnum[keyof typeof SmartCredentialStartSignParmsDigestKeyEnum];
/**
 * Information returned from the smart credential start sign operation.
 * @export
 * @interface SmartCredentialStartSignResponse
 */
export interface SmartCredentialStartSignResponse {
    /**
     * The smart credential push signature transactionId returned from the start sign operation.
     * @type {string}
     * @memberof SmartCredentialStartSignResponse
     */
    'transactionId'?: string;
}
/**
 * Parameters for the smart credential unblock operation.
 * @export
 * @interface SmartCredentialUnblockParms
 */
export interface SmartCredentialUnblockParms {
    /**
     * The smart credential unblock challenge generated from the smart credential.
     * @type {string}
     * @memberof SmartCredentialUnblockParms
     */
    'challenge'?: string;
}
/**
 * Information returned from the smart credential unblock operation.
 * @export
 * @interface SmartCredentialUnblockResponse
 */
export interface SmartCredentialUnblockResponse {
    /**
     * The smart credential unblock response that needs to be provided to the smart credential to allowed it  to complete the unblock operation.
     * @type {string}
     * @memberof SmartCredentialUnblockResponse
     */
    'response'?: string;
}
/**
 * Sms/Voice entitlements of a tenant.
 * @export
 * @interface SmsVoice
 */
export interface SmsVoice {
    /**
     * The number of entitlements allotted to the current account.  If the account is an SP then entitlements can be allocated to child accounts.
     * @type {number}
     * @memberof SmsVoice
     */
    'allotment'?: number;
    /**
     * The entitlements consumed since start date during the entitlement period.
     * @type {number}
     * @memberof SmsVoice
     */
    'consumed'?: number;
    /**
     * The date when the entitlement will end.
     * @type {string}
     * @memberof SmsVoice
     */
    'endDate'?: string;
    /**
     * The overage type of this entitlement.
     * @type {string}
     * @memberof SmsVoice
     */
    'overageType'?: SmsVoiceOverageTypeEnum;
    /**
     * The number of SMS/Voice credits allowed during the period.
     * @type {number}
     * @memberof SmsVoice
     */
    'quantity'?: number;
    /**
     * The number of SMS/Voice credits allowed when the entitlement is renewed.
     * @type {number}
     * @memberof SmsVoice
     */
    'renewalQuantity'?: number;
    /**
     * The date when the entitlement starts.
     * @type {string}
     * @memberof SmsVoice
     */
    'startDate'?: string;
}
export declare const SmsVoiceOverageTypeEnum: {
    readonly Yes: "YES";
    readonly No: "NO";
    readonly Unlimited: "UNLIMITED";
};
export type SmsVoiceOverageTypeEnum = typeof SmsVoiceOverageTypeEnum[keyof typeof SmsVoiceOverageTypeEnum];
/**
 * Parameters passed when setting the SMS/Voice entitlements of a tenant.
 * @export
 * @interface SmsVoiceParms
 */
export interface SmsVoiceParms {
    /**
     * If set to true when updating an SMSVOICE entitlement, the existing entitlement is removed. This attribute is ignored when creating an SMSVOICE entitlement.
     * @type {boolean}
     * @memberof SmsVoiceParms
     */
    'deleteEntitlement'?: boolean;
    /**
     * The date when the entitlement period will end.  The value must be after the start date.
     * @type {string}
     * @memberof SmsVoiceParms
     */
    'endDate'?: string;
    /**
     * The number of SMS/Voice credits allowed during the entitlement period.
     * @type {number}
     * @memberof SmsVoiceParms
     */
    'quantity'?: number;
    /**
     * The number of SMS/Voice credits allowed when the entitlement is renewed.
     * @type {number}
     * @memberof SmsVoiceParms
     */
    'renewalQuantity'?: number;
    /**
     * The date when the entitlement period starts. This value cannot be in the future. If not specified, it defaults to the current date.
     * @type {string}
     * @memberof SmsVoiceParms
     */
    'startDate'?: string;
}
/**
 * A tenant management configuration.
 * @export
 * @interface SpIdentityProvider
 */
export interface SpIdentityProvider {
    /**
     * The client id of this tenant management.
     * @type {string}
     * @memberof SpIdentityProvider
     */
    'clientId'?: string;
    /**
     * The default max age of this tenant management.
     * @type {number}
     * @memberof SpIdentityProvider
     */
    'defaultMaxAge'?: number;
    /**
     * Whether this tenant management should display consent.
     * @type {boolean}
     * @memberof SpIdentityProvider
     */
    'displayConsent'?: boolean;
    /**
     * Whether tenant management is enabled.
     * @type {boolean}
     * @memberof SpIdentityProvider
     */
    'enabled': boolean;
    /**
     * The initiate login URI of this tenant management.
     * @type {string}
     * @memberof SpIdentityProvider
     */
    'initiateLoginUri'?: string;
    /**
     * The name of this tenant management.
     * @type {string}
     * @memberof SpIdentityProvider
     */
    'name': string;
    /**
     * The signing key of this tenant management.
     * @type {string}
     * @memberof SpIdentityProvider
     */
    'signingKeyId'?: string;
}
/**
 * Parameters passed when setting tenant management.
 * @export
 * @interface SpIdentityProviderParms
 */
export interface SpIdentityProviderParms {
    /**
     * Whether an initial default resource rule accessible to all users should be created for this tenant management. This is only used if tenant management was previously disabled. If not set, it defaults to false.
     * @type {boolean}
     * @memberof SpIdentityProviderParms
     */
    'createDefaultResourceRule'?: boolean;
    /**
     * The default max age of this tenant management. If not set, it is not used.
     * @type {number}
     * @memberof SpIdentityProviderParms
     */
    'defaultMaxAge'?: number;
    /**
     * If an initial default resource rule is enabled, whether to disable SSO. This is only used if an initial default resource rule is being enabled. If not set, it defaults to false.
     * @type {boolean}
     * @memberof SpIdentityProviderParms
     */
    'disableSSODefaultResourceRule'?: boolean;
    /**
     * Whether this tenant management should display consent. If not set, it defaults to false.
     * @type {boolean}
     * @memberof SpIdentityProviderParms
     */
    'displayConsent'?: boolean;
    /**
     * Whether tenant management is enabled.
     * @type {boolean}
     * @memberof SpIdentityProviderParms
     */
    'enabled': boolean;
    /**
     * The signing key of this tenant management.
     * @type {string}
     * @memberof SpIdentityProviderParms
     */
    'signingKeyId'?: string;
}
/**
 * The values associated with a synchronized user.  This structure is returned when synchronizing a user.
 * @export
 * @interface SyncUser
 */
export interface SyncUser {
    /**
     * The directory Id for this user.
     * @type {string}
     * @memberof SyncUser
     */
    'directoryId'?: string;
    /**
     * The directory uuid for this user.
     * @type {string}
     * @memberof SyncUser
     */
    'directoryUuid'?: string;
    /**
     * The searchBase Id for this user.
     * @type {string}
     * @memberof SyncUser
     */
    'searchBaseId'?: string;
    /**
     * The outcome of the synchronization.
     * @type {string}
     * @memberof SyncUser
     */
    'status': SyncUserStatusEnum;
    /**
     * The user Id for this user.
     * @type {string}
     * @memberof SyncUser
     */
    'userId': string;
    /**
     * The uuid for this user.
     * @type {string}
     * @memberof SyncUser
     */
    'uuid': string;
}
export declare const SyncUserStatusEnum: {
    readonly Converted: "CONVERTED";
    readonly Created: "CREATED";
    readonly Deleted: "DELETED";
    readonly LocalizedEnabled: "LOCALIZED_ENABLED";
    readonly LocalizedDisabled: "LOCALIZED_DISABLED";
    readonly Updated: "UPDATED";
};
export type SyncUserStatusEnum = typeof SyncUserStatusEnum[keyof typeof SyncUserStatusEnum];
/**
 * Parameters for synchronization.
 * @export
 * @interface SyncUserParms
 */
export interface SyncUserParms {
    /**
     * The directory id for this synchronization.  This value is required
     * @type {string}
     * @memberof SyncUserParms
     */
    'directoryId': string;
    /**
     * The id of the user to be synchronized.  The type of the id is specified by idType.
     * @type {string}
     * @memberof SyncUserParms
     */
    'id': string;
    /**
     * The type of the id identifying the user.  The value can be one of UUID (the user\'s internal UUID) or USERID (the user\'s userId). The value of EXTERNALID  is currently not supported.  If not specified, this defaults to USERID.
     * @type {string}
     * @memberof SyncUserParms
     */
    'idType'?: SyncUserParmsIdTypeEnum;
}
export declare const SyncUserParmsIdTypeEnum: {
    readonly Uuid: "UUID";
    readonly Userid: "USERID";
    readonly Externalid: "EXTERNALID";
};
export type SyncUserParmsIdTypeEnum = typeof SyncUserParmsIdTypeEnum[keyof typeof SyncUserParmsIdTypeEnum];
/**
 * Information returned from the service about a temporary access code.
 * @export
 * @interface TempAccessCode
 */
export interface TempAccessCode {
    /**
     * The actual temporary access code.  This value will only be returned if the administrator has the TEMPACCESSCODECONTENTS:VIEW permission.
     * @type {string}
     * @memberof TempAccessCode
     */
    'code'?: string;
    /**
     * The date on which this temporary access code was created.
     * @type {string}
     * @memberof TempAccessCode
     */
    'createDate'?: string;
    /**
     * A flag indicating if this temporary access code is expired now.
     * @type {boolean}
     * @memberof TempAccessCode
     */
    'expired'?: boolean;
    /**
     * The expiry date of this temporary access code.  If not set, it never expires.
     * @type {string}
     * @memberof TempAccessCode
     */
    'expiryDate'?: string;
    /**
     * The unique UUID assigned to the temporary access code when it is created.
     * @type {string}
     * @memberof TempAccessCode
     */
    'id'?: string;
    /**
     * The maximum number of times this temporary access code can be used.  If not set, there are no limits.
     * @type {number}
     * @memberof TempAccessCode
     */
    'maxUses'?: number;
    /**
     * The number of times this temporary access code has been used.
     * @type {number}
     * @memberof TempAccessCode
     */
    'numUses'?: number;
}
/**
 * Information returned about a tenant of a service provider.
 * @export
 * @interface Tenant
 */
export interface Tenant {
    /**
     * A flag indicating if this tenant is an authentication account.
     * @type {boolean}
     * @memberof Tenant
     */
    'authenticationAccount': boolean;
    /**
     * The name of the company that owns this tenant.
     * @type {string}
     * @memberof Tenant
     */
    'companyName': string;
    /**
     * The contract mode of a tenant, allowable values = \'PRODUCTION\', \'TRIAL\', example=\'TRIAL\'.
     * @type {string}
     * @memberof Tenant
     */
    'contractMode'?: TenantContractModeEnum;
    /**
     * The hostname of the tenant.
     * @type {string}
     * @memberof Tenant
     */
    'hostname': string;
    /**
     * The UUID of this tenant within the service provider.
     * @type {string}
     * @memberof Tenant
     */
    'id': string;
    /**
     * A flag indicating if this tenant is an issuance account.
     * @type {boolean}
     * @memberof Tenant
     */
    'issuanceAccount': boolean;
    /**
     * A flag indicating if this tenant has been locked.
     * @type {boolean}
     * @memberof Tenant
     */
    'locked': boolean;
    /**
     * The previous hostname of the tenant.
     * @type {string}
     * @memberof Tenant
     */
    'previousHostname'?: string;
    /**
     * A flag indicating if this child tenant is a service provider.
     * @type {boolean}
     * @memberof Tenant
     */
    'serviceProvider': boolean;
    /**
     * A flag indicating if this tenant is enabled for tenant management authentication.
     * @type {boolean}
     * @memberof Tenant
     */
    'spIdp': boolean;
}
export declare const TenantContractModeEnum: {
    readonly Production: "PRODUCTION";
    readonly Trial: "TRIAL";
    readonly Unknown: "UNKNOWN";
};
export type TenantContractModeEnum = typeof TenantContractModeEnum[keyof typeof TenantContractModeEnum];
/**
 * Parameters passed when creating a tenant.
 * @export
 * @interface TenantParms
 */
export interface TenantParms {
    /**
     * When creating a new tenant as a child of the root service provider set this to true if the tenant is to be an authentication service. If not specified, it defaults to true. You cannot set the authenticate and issuance values to both true or both false. A child of a non-root service provider inherits the value of its service provider and if specified, this value is ignored.
     * @type {boolean}
     * @memberof TenantParms
     */
    'authenticationAccount'?: boolean;
    /**
     * The country two-letter code (ISO 3166-1) of the location of the company that will own this account.
     * @type {string}
     * @memberof TenantParms
     */
    'companyCountry'?: string;
    /**
     * The name of the company that will own this account.  This value is required.
     * @type {string}
     * @memberof TenantParms
     */
    'companyName': string;
    /**
     * The province/state two-letter code (postal abbreviation) of the location of the company that will own this account. This value is required for companies in the United States or Canada when the companyCountry attribute is provided.
     * @type {string}
     * @memberof TenantParms
     */
    'companyState'?: string;
    /**
     * The domain for this account. This value is required when creating a tenant
     * @type {string}
     * @memberof TenantParms
     */
    'domain': string;
    /**
     * When creating a new tenant as a child of the root service provider set this to true if the tenant is to be an issuance service. If not specified, it defaults to false. You cannot set the authenticate and issuance values to both true or both false. A child of a non-root service provider inherits the value of its service provider and if specified, this value is ignored.
     * @type {boolean}
     * @memberof TenantParms
     */
    'issuanceAccount'?: boolean;
    /**
     * When creating a new tenant set this to true if the tenant is to be a service provider.
     * @type {boolean}
     * @memberof TenantParms
     */
    'serviceProvider'?: boolean;
}
/**
 * Contains paging information and the results from a tenants search.
 * @export
 * @interface TenantsPage
 */
export interface TenantsPage {
    /**
     *
     * @type {Paging}
     * @memberof TenantsPage
     */
    'paging'?: Paging;
    /**
     * A single page with the list of tenants found.
     * @type {Array<Tenant>}
     * @memberof TenantsPage
     */
    'results': Array<Tenant>;
}
/**
 * Information returned from the service about a token.
 * @export
 * @interface Token
 */
export interface Token {
    /**
     * The algorithm type used by the token that was created or loaded into the system to generate OTP values.
     * @type {string}
     * @memberof Token
     */
    'algorithmType'?: TokenAlgorithmTypeEnum;
    /**
     * Actions that can be performed on this token.
     * @type {Array<string>}
     * @memberof Token
     */
    'allowedActions'?: Array<TokenAllowedActionsEnum>;
    /**
     * A flag indicating if the token was activated on a verified app.
     * @type {boolean}
     * @memberof Token
     */
    'appVerified': boolean;
    /**
     * Optional text describing this token.
     * @type {string}
     * @memberof Token
     */
    'description'?: string;
    /**
     * A flag indicating if the token is activated on a verified device.
     * @type {boolean}
     * @memberof Token
     */
    'deviceVerified': boolean;
    /**
     * The UUIDs of groups to which this token belongs.  This value is only used for unassigned tokens. Only groups to which the current administrator has access will be returned.
     * @type {Array<string>}
     * @memberof Token
     */
    'groups'?: Array<string>;
    /**
     * The unique UUID assigned to the token when it is created.
     * @type {string}
     * @memberof Token
     */
    'id'?: string;
    /**
     * The identity verification status of the token.
     * @type {string}
     * @memberof Token
     */
    'identityVerificationStatus'?: TokenIdentityVerificationStatusEnum;
    /**
     * Optional label to identify an assigned token: a String up to 100 characters.
     * @type {string}
     * @memberof Token
     */
    'label'?: string;
    /**
     * The date on which the token was last used for authentication.  This value will be null if the token has never been used.
     * @type {string}
     * @memberof Token
     */
    'lastUsedDate'?: string;
    /**
     * The date on which the token was created or loaded into the system.
     * @type {string}
     * @memberof Token
     */
    'loadDate'?: string;
    /**
     * Base-64 encoded logo. If a custom logo is provided by the customer it is returned. Otherwise a system default logo is returned.
     * @type {string}
     * @memberof Token
     */
    'logo'?: string;
    /**
     * An optional name for the token.
     * @type {string}
     * @memberof Token
     */
    'name'?: string;
    /**
     * The mobile device platform on which an Entrust Soft Token was activated.
     * @type {string}
     * @memberof Token
     */
    'platform'?: string;
    /**
     * A flag indicating if the Entrust Soft Token has registered for transactions. Only tokens that are registered can perform token push authentication.
     * @type {boolean}
     * @memberof Token
     */
    'registeredForTransactions'?: boolean;
    /**
     * The serial number of the token either generated when the token was created or loaded into the system.
     * @type {string}
     * @memberof Token
     */
    'serialNumber'?: string;
    /**
     * The state of the token.  For most tokens, only tokens in the ACTIVE state can be used for authentication. Google Authenticator tokens in the ACTIVATING state can also be used for authentication.
     * @type {string}
     * @memberof Token
     */
    'state'?: TokenStateEnum;
    /**
     * A flag indicating if the Token supports challenge response processing.
     * @type {boolean}
     * @memberof Token
     */
    'supportsChallengeResponse'?: boolean;
    /**
     * A flag indicating if the Token supports response processing.
     * @type {boolean}
     * @memberof Token
     */
    'supportsResponse'?: boolean;
    /**
     * A flag indicating if the Token supports signature processing.
     * @type {boolean}
     * @memberof Token
     */
    'supportsSignature'?: boolean;
    /**
     * A flag indicating if the Token supports unlock processing.
     * @type {boolean}
     * @memberof Token
     */
    'supportsUnlock'?: boolean;
    /**
     * A flag indicating if the Token supports unlock using TOTP processing.
     * @type {boolean}
     * @memberof Token
     */
    'supportsUnlockTOTP'?: boolean;
    /**
     * The type of token specified when the token was created or loaded into the system.
     * @type {string}
     * @memberof Token
     */
    'type'?: TokenTypeEnum;
    /**
     * If the token is assigned to a user, this value specifies that user\'s user id.
     * @type {string}
     * @memberof Token
     */
    'userId'?: string;
}
export declare const TokenAlgorithmTypeEnum: {
    readonly At: "AT";
    readonly OathHotp: "OATH_HOTP";
    readonly OathOcra: "OATH_OCRA";
    readonly OathTotp: "OATH_TOTP";
    readonly Vendor: "VENDOR";
};
export type TokenAlgorithmTypeEnum = typeof TokenAlgorithmTypeEnum[keyof typeof TokenAlgorithmTypeEnum];
export declare const TokenAllowedActionsEnum: {
    readonly Activate: "ACTIVATE";
    readonly Reactivate: "REACTIVATE";
    readonly ActivateComplete: "ACTIVATE_COMPLETE";
    readonly Delete: "DELETE";
    readonly Unlock: "UNLOCK";
    readonly Enable: "ENABLE";
    readonly Disable: "DISABLE";
    readonly Reset: "RESET";
    readonly Assign: "ASSIGN";
    readonly Unassign: "UNASSIGN";
};
export type TokenAllowedActionsEnum = typeof TokenAllowedActionsEnum[keyof typeof TokenAllowedActionsEnum];
export declare const TokenIdentityVerificationStatusEnum: {
    readonly NotRequired: "NOT_REQUIRED";
    readonly Required: "REQUIRED";
    readonly Pending: "PENDING";
    readonly Verified: "VERIFIED";
    readonly Failed: "FAILED";
};
export type TokenIdentityVerificationStatusEnum = typeof TokenIdentityVerificationStatusEnum[keyof typeof TokenIdentityVerificationStatusEnum];
export declare const TokenStateEnum: {
    readonly New: "NEW";
    readonly Activating: "ACTIVATING";
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
    readonly Unassigned: "UNASSIGNED";
};
export type TokenStateEnum = typeof TokenStateEnum[keyof typeof TokenStateEnum];
export declare const TokenTypeEnum: {
    readonly EntrustPhysicalToken: "ENTRUST_PHYSICAL_TOKEN";
    readonly EntrustSoftToken: "ENTRUST_SOFT_TOKEN";
    readonly GoogleAuthenticator: "GOOGLE_AUTHENTICATOR";
    readonly OathPhysicalToken: "OATH_PHYSICAL_TOKEN";
    readonly EntrustLegacyToken: "ENTRUST_LEGACY_TOKEN";
};
export type TokenTypeEnum = typeof TokenTypeEnum[keyof typeof TokenTypeEnum];
/**
 * Optional arguments specifying if the new token is automatically activated. If these arguments are not specified, the token is activated using activation defaults.
 * @export
 * @interface TokenCreateParms
 */
export interface TokenCreateParms {
    /**
     *
     * @type {ActivateParms}
     * @memberof TokenCreateParms
     */
    'activateParms'?: ActivateParms;
}
/**
 * Arguments specified changes to the token.
 * @export
 * @interface TokenParms
 */
export interface TokenParms {
    /**
     * When modifying unassigned tokens the list of UUIDs of groups to which the tokens will belong. If an empty list is provided, the unassigned token will not belong to any groups.
     * @type {Array<string>}
     * @memberof TokenParms
     */
    'groups'?: Array<string>;
}
/**
 * Contains paging information and the results from an assigned tokens search.
 * @export
 * @interface TokensPage
 */
export interface TokensPage {
    /**
     *
     * @type {Paging}
     * @memberof TokensPage
     */
    'paging'?: Paging;
    /**
     * A single page with the list of assigned tokens found.
     * @type {Array<Token>}
     * @memberof TokensPage
     */
    'results': Array<Token>;
}
/**
 * The transaction context specifies transaction rules. Risk is applied to the authentication 1if the accumulated risk score of the transaction rules is above the risk limit.
 * @export
 * @interface TransactionContext
 */
export interface TransactionContext {
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof TransactionContext
     */
    'denyAccess': boolean;
    /**
     * The name of this transaction context.
     * @type {string}
     * @memberof TransactionContext
     */
    'name': string;
    /**
     * The risk points apply if the accumulated risk of each configured transaction rule is above this value.
     * @type {number}
     * @memberof TransactionContext
     */
    'riskLimit': number;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof TransactionContext
     */
    'riskPoint': number;
    /**
     * The transaction rules associated with this context.
     * @type {Array<TransactionRuleRisk>}
     * @memberof TransactionContext
     */
    'transactionRuleRisks': Array<TransactionRuleRisk>;
}
/**
 * Transaction detail item and its value used with push authenticators and with offline transaction verification.
 * @export
 * @interface TransactionDetail
 */
export interface TransactionDetail {
    /**
     * The transaction detail name.
     * @type {string}
     * @memberof TransactionDetail
     */
    'detail'?: string;
    /**
     *
     * @type {Array<string>}
     * @memberof TransactionDetail
     */
    'usage'?: Array<TransactionDetailUsageEnum>;
    /**
     * The transaction detail value.
     * @type {string}
     * @memberof TransactionDetail
     */
    'value'?: string;
}
export declare const TransactionDetailUsageEnum: {
    readonly Rba: "RBA";
    readonly Tvs: "TVS";
};
export type TransactionDetailUsageEnum = typeof TransactionDetailUsageEnum[keyof typeof TransactionDetailUsageEnum];
/**
 * Information stored for a transaction rule description.
 * @export
 * @interface TransactionRuleDescription
 */
export interface TransactionRuleDescription {
    /**
     * The description of this transaction rule.
     * @type {string}
     * @memberof TransactionRuleDescription
     */
    'description': string;
    /**
     * The UUID of this transaction rule.
     * @type {string}
     * @memberof TransactionRuleDescription
     */
    'id': string;
    /**
     * The name of this transaction rule.
     * @type {string}
     * @memberof TransactionRuleDescription
     */
    'name': string;
}
/**
 * Information associated with the risk of a specific transaction rule within a transaction context.
 * @export
 * @interface TransactionRuleRisk
 */
export interface TransactionRuleRisk {
    /**
     * The risk score that applies if this transaction rule is triggered.
     * @type {number}
     * @memberof TransactionRuleRisk
     */
    'riskScore': number;
    /**
     * The id of the transaction rule associated with this risk definition.
     * @type {string}
     * @memberof TransactionRuleRisk
     */
    'transactionRuleId': string;
}
/**
 * Travel velocity checks to see if the time between authentications at different locations means the user has traveled faster than a given velocity. If the velocity is exceeded, risk applies.
 * @export
 * @interface TravelVelocityContext
 */
export interface TravelVelocityContext {
    /**
     * If true, the resource rule evaluating the context will return Access Denied.
     * @type {boolean}
     * @memberof TravelVelocityContext
     */
    'denyAccess': boolean;
    /**
     * The number of risk points that apply if this context applies.
     * @type {number}
     * @memberof TravelVelocityContext
     */
    'riskPoint': number;
}
/**
 * Parameters specifying parameters for the token unlock operation.
 * @export
 * @interface UnlockParms
 */
export interface UnlockParms {
    /**
     * The unlock challenge generated by the token when it is locked.
     * @type {string}
     * @memberof UnlockParms
     */
    'unlockChallenge': string;
}
/**
 * The response returned from a token unlock operation.
 * @export
 * @interface UnlockResult
 */
export interface UnlockResult {
    /**
     * The unlock code generated by the service in response to the unlock challenge. This value should be entered into the token to complete the unlock.
     * @type {string}
     * @memberof UnlockResult
     */
    'unlockCode': string;
}
/**
 * Parameters for unsynchronization.
 * @export
 * @interface UnsyncUserParms
 */
export interface UnsyncUserParms {
    /**
     * The id of the user to be unsynchronized.  The type of the id is specified by idType.
     * @type {string}
     * @memberof UnsyncUserParms
     */
    'id': string;
    /**
     * The type of the id identifying the user.  The value can be one of UUID (the user\'s internal UUID) or USERID (the user\'s userId). The value of EXTERNALID  is currently not supported.  If not specified, this defaults to USERID.
     * @type {string}
     * @memberof UnsyncUserParms
     */
    'idType'?: UnsyncUserParmsIdTypeEnum;
}
export declare const UnsyncUserParmsIdTypeEnum: {
    readonly Uuid: "UUID";
    readonly Userid: "USERID";
    readonly Externalid: "EXTERNALID";
};
export type UnsyncUserParmsIdTypeEnum = typeof UnsyncUserParmsIdTypeEnum[keyof typeof UnsyncUserParmsIdTypeEnum];
/**
 * When updating multiple users in a single request, the UpdateUserParms value contains the update parameters for a single user.  It will include the id of the user to be updated and the parameters to be changed for that user.
 * @export
 * @interface UpdateUserParms
 */
export interface UpdateUserParms {
    /**
     * The id of the user to be updated.  The type of the id is specified by idType.
     * @type {string}
     * @memberof UpdateUserParms
     */
    'id': string;
    /**
     * The type of the id identifying the user.  The value can be one of UUID (the user\'s internal UUID), USERID (the user\'s userId) or EXTERNALID (the externalId of the user). If not specified, this defaults to UUID.
     * @type {string}
     * @memberof UpdateUserParms
     */
    'idType'?: UpdateUserParmsIdTypeEnum;
    /**
     *
     * @type {UserParms}
     * @memberof UpdateUserParms
     */
    'parms': UserParms;
}
export declare const UpdateUserParmsIdTypeEnum: {
    readonly Uuid: "UUID";
    readonly Userid: "USERID";
    readonly Externalid: "EXTERNALID";
};
export type UpdateUserParmsIdTypeEnum = typeof UpdateUserParmsIdTypeEnum[keyof typeof UpdateUserParmsIdTypeEnum];
/**
 * When updating multiple users in a single request, the UpdateUserResult value contains the result for a single user.  It will indicate if the operation succeeded and if it failed will include error information describing why the  operation failed.
 * @export
 * @interface UpdateUserResult
 */
export interface UpdateUserResult {
    /**
     *
     * @type {ErrorInfo}
     * @memberof UpdateUserResult
     */
    'error'?: ErrorInfo;
    /**
     * Indicates if the user was successfully updated (true) or not (false).
     * @type {boolean}
     * @memberof UpdateUserResult
     */
    'success': boolean;
}
/**
 * The list of users to update and the parameters to change for each user.
 * @export
 * @interface UpdateUsersParms
 */
export interface UpdateUsersParms {
    /**
     * If set to true, the operation stops on the first operation that fails.  Otherwise the operation continues for each specified user. If not specified, this defaults to false.
     * @type {boolean}
     * @memberof UpdateUsersParms
     */
    'stopOnError'?: boolean;
    /**
     * The list of users to be updated.
     * @type {Array<UpdateUserParms>}
     * @memberof UpdateUsersParms
     */
    'users': Array<UpdateUserParms>;
}
/**
 * Entitlement usage information of a tenant.
 * @export
 * @interface UsageInfo
 */
export interface UsageInfo {
    /**
     * The aggregation period used.
     * @type {string}
     * @memberof UsageInfo
     */
    'aggregationPeriod': UsageInfoAggregationPeriodEnum;
    /**
     * The service bundle.
     * @type {string}
     * @memberof UsageInfo
     */
    'bundleType'?: string;
    /**
     * The entitlements used in the aggregation period.
     * @type {number}
     * @memberof UsageInfo
     */
    'count': number;
    /**
     * The end time of the aggregation period.
     * @type {string}
     * @memberof UsageInfo
     */
    'endTime': string;
    /**
     * The unique UUID for this usage info.
     * @type {string}
     * @memberof UsageInfo
     */
    'id': string;
    /**
     * The start time of the aggregation period.
     * @type {string}
     * @memberof UsageInfo
     */
    'startTime': string;
    /**
     * The unique UUID of the tenant.
     * @type {string}
     * @memberof UsageInfo
     */
    'tenantId': string;
    /**
     * Whether the usage is associated to a trial tenant.
     * @type {boolean}
     * @memberof UsageInfo
     */
    'trial': boolean;
    /**
     * The type of this entitlement.
     * @type {string}
     * @memberof UsageInfo
     */
    'usageType': UsageInfoUsageTypeEnum;
}
export declare const UsageInfoAggregationPeriodEnum: {
    readonly Daily: "DAILY";
    readonly Weekly: "WEEKLY";
    readonly Monthly: "MONTHLY";
};
export type UsageInfoAggregationPeriodEnum = typeof UsageInfoAggregationPeriodEnum[keyof typeof UsageInfoAggregationPeriodEnum];
export declare const UsageInfoUsageTypeEnum: {
    readonly Users: "USERS";
    readonly Issuance: "ISSUANCE";
};
export type UsageInfoUsageTypeEnum = typeof UsageInfoUsageTypeEnum[keyof typeof UsageInfoUsageTypeEnum];
/**
 * Contains paging information and the results from a tenant usage info search.
 * @export
 * @interface UsageInfoPage
 */
export interface UsageInfoPage {
    /**
     *
     * @type {Paging}
     * @memberof UsageInfoPage
     */
    'paging'?: Paging;
    /**
     * A single page with the list of usage info found.
     * @type {Array<UsageInfo>}
     * @memberof UsageInfoPage
     */
    'results': Array<UsageInfo>;
}
/**
 * The values stored for a user.  This structure is passed when creating or modifying a user.  It is returned when querying a user.
 * @export
 * @interface User
 */
export interface User {
    /**
     * A list of all the users alternate emails.
     * @type {Array<UserAlternateEmails>}
     * @memberof User
     */
    'alternateEmails'?: Array<UserAlternateEmails>;
    /**
     * A list of all authenticators that the user has with their lockout status.
     * @type {Array<UserAuthenticatorLockoutStatus>}
     * @memberof User
     */
    'authenticatorLockoutStatus'?: Array<UserAuthenticatorLockoutStatus>;
    /**
     * The DN of the user in the directory the user was synchronized from.
     * @type {string}
     * @memberof User
     */
    'directoryDN'?: string;
    /**
     * If the user was synchronized from a directory, the UUID of that directory.
     * @type {string}
     * @memberof User
     */
    'directoryId'?: string;
    /**
     * If the user was synchronized from a directory, the name of that directory.
     * @type {string}
     * @memberof User
     */
    'directoryName'?: string;
    /**
     * The objectGUID of the user in the directory the user was synchronized from.
     * @type {string}
     * @memberof User
     */
    'directoryObjectGUID'?: string;
    /**
     * The type of the directory user was synchronized from.
     * @type {string}
     * @memberof User
     */
    'directoryType'?: UserDirectoryTypeEnum;
    /**
     * The email address of this user.  This value may or may not be required depending on configuration. It must be set to use EMAIL OTP authentication and other features that require an email address.
     * @type {string}
     * @memberof User
     */
    'email'?: string;
    /**
     * An optional external ID for this user.  This value can be used to track the external identity of an Identity as a Service user.
     * @type {string}
     * @memberof User
     */
    'externalId'?: string;
    /**
     * An optional value that describes the source when the user is synchronized from an external source.
     * @type {string}
     * @memberof User
     */
    'externalSource'?: string;
    /**
     * A list of all the FIDO tokens owned by this user.
     * @type {Array<FIDOToken>}
     * @memberof User
     */
    'fidoTokens'?: Array<FIDOToken>;
    /**
     * The first name of this user.  This value may or may not be required depending on configuration.
     * @type {string}
     * @memberof User
     */
    'firstName'?: string;
    /**
     * Indicates whether a user is unable to authenticate due to inactivity.
     * @type {boolean}
     * @memberof User
     */
    'frozen'?: boolean;
    /**
     * Indicates a user\'s frozen grace period.
     * @type {string}
     * @memberof User
     */
    'frozenGracePeriod'?: string;
    /**
     * A list of all the grids owned by this user.
     * @type {Array<Grid>}
     * @memberof User
     */
    'grids'?: Array<Grid>;
    /**
     * A list of all groups to which this user belongs.
     * @type {Array<Group>}
     * @memberof User
     */
    'groups'?: Array<Group>;
    /**
     * The unique UUID for this user.  This value is generated by the service when a user is created.
     * @type {string}
     * @memberof User
     */
    'id'?: string;
    /**
     * The last time this user successfully authenticated.  Null if the user has never authenticated.
     * @type {string}
     * @memberof User
     */
    'lastAuthTime'?: string;
    /**
     * When the user was last modified.
     * @type {string}
     * @memberof User
     */
    'lastModified'?: string;
    /**
     * The last name of this user.  This value may or may not be required depending on configuration.
     * @type {string}
     * @memberof User
     */
    'lastName'?: string;
    /**
     * The locale of this user.  If not set, the default account locale will be used.
     * @type {string}
     * @memberof User
     */
    'locale'?: string;
    /**
     * A flag indicating if this user is locked.
     * @type {boolean}
     * @memberof User
     */
    'locked'?: boolean;
    /**
     * The user authenticators that are locked.
     * @type {Array<string>}
     * @memberof User
     */
    'lockedAuthenticatorTypes'?: Array<UserLockedAuthenticatorTypesEnum>;
    /**
     * The user authenticators that are locked. Deprecated: use lockedAuthenticatorTypes
     * @type {Array<string>}
     * @memberof User
     * @deprecated
     */
    'lockedAuthenticators'?: Array<UserLockedAuthenticatorsEnum>;
    /**
     * If the user is locked, this value will specify the time at which the lockout will expire.
     * @type {string}
     * @memberof User
     */
    'lockoutExpiry'?: string;
    /**
     * Indicates whether Magic Links are enabled for this user.
     * @type {boolean}
     * @memberof User
     */
    'magicLinkEnabled'?: boolean;
    /**
     * A flag indicating if this user was migrated from Entrust IdentityGuard.
     * @type {boolean}
     * @memberof User
     */
    'migrated'?: boolean;
    /**
     * The mobile number of this user.  This value may or may not be required depending on configuration. It must be set to use SMS OTP authentication.
     * @type {string}
     * @memberof User
     */
    'mobile'?: string;
    /**
     * A list of all oauth roles to which this user belongs.
     * @type {Array<OAuthRole>}
     * @memberof User
     */
    'oauthRoles'?: Array<OAuthRole>;
    /**
     * A list of the user organizations.
     * @type {Array<Organization>}
     * @memberof User
     */
    'organizations'?: Array<Organization>;
    /**
     * If the user has an OTP, this attribute specifies when the user\'s OTP was created.
     * @type {string}
     * @memberof User
     */
    'otpCreateTime'?: string;
    /**
     * The password expiration time.
     * @type {string}
     * @memberof User
     */
    'passwordExpirationTime'?: string;
    /**
     * The phone number of this user.  This value may or may not be required depending on configuration. It must be set to use VOICE OTP authentication.
     * @type {string}
     * @memberof User
     */
    'phone'?: string;
    /**
     * Preferred OTP delivery type (SMS, EMAIL or VOICE) or SYSTEM to use the system defined default.
     * @type {string}
     * @memberof User
     */
    'preferredOtpDelivery'?: UserPreferredOtpDeliveryEnum;
    /**
     * Preferred OTP delivery contact attribute for the given type (i.e., OTP_EMAIL, OTP_SMS, OTP_VOICE. An empty string means no override for that type).
     * @type {{ [key: string]: string; }}
     * @memberof User
     */
    'preferredOtpDeliveryContactAttributes'?: {
        [key: string]: string;
    };
    /**
     * Indicates whether registration is enabled for this user.
     * @type {boolean}
     * @memberof User
     */
    'registrationEnabled'?: boolean;
    /**
     * Indicates whether self-registration is required. This attribute doesn\'t apply to administrators.
     * @type {boolean}
     * @memberof User
     */
    'registrationRequired'?: boolean;
    /**
     * The security ID of this user. The security ID is a unique value used to identity the user when performing smart card login to Microsoft Windows.
     * @type {string}
     * @memberof User
     */
    'securityId'?: string;
    /**
     * Indicates whether to show notifications to this user.
     * @type {boolean}
     * @memberof User
     */
    'showNotification'?: boolean;
    /**
     * A list of all the smart credentials owned by this user.
     * @type {Array<SmartCredential>}
     * @memberof User
     */
    'smartCredentials'?: Array<SmartCredential>;
    /**
     * The state of this user.  Only users in the ACTIVE state can perform authentication.
     * @type {string}
     * @memberof User
     */
    'state'?: UserStateEnum;
    /**
     *
     * @type {TempAccessCode}
     * @memberof User
     */
    'tempAccessCode'?: TempAccessCode;
    /**
     * A list of all the tokens owned by this user.
     * @type {Array<Token>}
     * @memberof User
     */
    'tokens'?: Array<Token>;
    /**
     * The type of user.  A value of LDAP_AD means the user was synchronized from a directory. A value of MGMT_UI means the user was created in Identity as a Service. A value of EXTERNAL means the user was synchronized from an external source.
     * @type {string}
     * @memberof User
     */
    'type'?: UserTypeEnum;
    /**
     * A list of user aliases for this user.
     * @type {Array<UserAlias>}
     * @memberof User
     */
    'userAliases'?: Array<UserAlias>;
    /**
     * A list of user attribute values for this user.
     * @type {Array<UserAttributeValue>}
     * @memberof User
     */
    'userAttributeValues'?: Array<UserAttributeValue>;
    /**
     * The user authenticator preference list.
     * @type {Array<string>}
     * @memberof User
     */
    'userAuthenticatorPreference'?: Array<UserUserAuthenticatorPreferenceEnum>;
    /**
     * The time this user was created.
     * @type {string}
     * @memberof User
     */
    'userCreationTime'?: string;
    /**
     * A list of extra optional attributes for this user.
     * @type {Array<UserExtraAttribute>}
     * @memberof User
     */
    'userExtraAttributes'?: Array<UserExtraAttribute>;
    /**
     * The user ID for this user.
     * @type {string}
     * @memberof User
     */
    'userId'?: string;
    /**
     * The user principal name of this user.  This value may or may not be required depending on configuration.
     * @type {string}
     * @memberof User
     */
    'userPrincipalName'?: string;
    /**
     * Indicates whether verification is enabled for this user.
     * @type {boolean}
     * @memberof User
     */
    'verificationEnabled'?: boolean;
    /**
     * Indicates whether verification is required. This attribute doesn\'t apply to administrators.
     * @type {boolean}
     * @memberof User
     */
    'verificationRequired'?: boolean;
}
export declare const UserDirectoryTypeEnum: {
    readonly OnPrem: "ON_PREM";
    readonly Azure: "AZURE";
    readonly AdConnector: "AD_CONNECTOR";
};
export type UserDirectoryTypeEnum = typeof UserDirectoryTypeEnum[keyof typeof UserDirectoryTypeEnum];
export declare const UserLockedAuthenticatorTypesEnum: {
    readonly Machine: "MACHINE";
    readonly Password: "PASSWORD";
    readonly External: "EXTERNAL";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly PasswordAndSecondfactor: "PASSWORD_AND_SECONDFACTOR";
    readonly SmartLogin: "SMART_LOGIN";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly IdpAndSecondfactor: "IDP_AND_SECONDFACTOR";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type UserLockedAuthenticatorTypesEnum = typeof UserLockedAuthenticatorTypesEnum[keyof typeof UserLockedAuthenticatorTypesEnum];
export declare const UserLockedAuthenticatorsEnum: {
    readonly Password: "PASSWORD";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Grid: "GRID";
    readonly OtpEmail: "OTP_EMAIL";
    readonly OtpSms: "OTP_SMS";
    readonly OtpVoice: "OTP_VOICE";
    readonly EntrustSoftToken: "ENTRUST_SOFT_TOKEN";
    readonly EntrustSoftTokenPush: "ENTRUST_SOFT_TOKEN_PUSH";
    readonly GoogleAuthenticator: "GOOGLE_AUTHENTICATOR";
    readonly HardwareToken: "HARDWARE_TOKEN";
    readonly Fido: "FIDO";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Machine: "MACHINE";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Tokencr: "TOKENCR";
    readonly Magiclink: "MAGICLINK";
};
export type UserLockedAuthenticatorsEnum = typeof UserLockedAuthenticatorsEnum[keyof typeof UserLockedAuthenticatorsEnum];
export declare const UserPreferredOtpDeliveryEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly System: "SYSTEM";
};
export type UserPreferredOtpDeliveryEnum = typeof UserPreferredOtpDeliveryEnum[keyof typeof UserPreferredOtpDeliveryEnum];
export declare const UserStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type UserStateEnum = typeof UserStateEnum[keyof typeof UserStateEnum];
export declare const UserTypeEnum: {
    readonly LdapAd: "LDAP_AD";
    readonly MgmtUi: "MGMT_UI";
    readonly External: "EXTERNAL";
};
export type UserTypeEnum = typeof UserTypeEnum[keyof typeof UserTypeEnum];
export declare const UserUserAuthenticatorPreferenceEnum: {
    readonly Machine: "MACHINE";
    readonly Password: "PASSWORD";
    readonly External: "EXTERNAL";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly PasswordAndSecondfactor: "PASSWORD_AND_SECONDFACTOR";
    readonly SmartLogin: "SMART_LOGIN";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly IdpAndSecondfactor: "IDP_AND_SECONDFACTOR";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type UserUserAuthenticatorPreferenceEnum = typeof UserUserAuthenticatorPreferenceEnum[keyof typeof UserUserAuthenticatorPreferenceEnum];
/**
 * Specifies an alias for a particular user.
 * @export
 * @interface UserAlias
 */
export interface UserAlias {
    /**
     * The UUID of this user alias set when the user alias is created.
     * @type {string}
     * @memberof UserAlias
     */
    'id'?: string;
    /**
     * The type of user alias. A value of USERID is used for an alias that will represent the actual user id value. A value of CUSTOM is used for aliases manually created by an administrator.  A value of DERIVED is defined for future use and should not be used at this time.
     * @type {string}
     * @memberof UserAlias
     */
    'type'?: UserAliasTypeEnum;
    /**
     * The UUID of the user to which this user alias belongs.
     * @type {string}
     * @memberof UserAlias
     */
    'userId'?: string;
    /**
     * The value for the user alias.
     * @type {string}
     * @memberof UserAlias
     */
    'value'?: string;
}
export declare const UserAliasTypeEnum: {
    readonly Custom: "CUSTOM";
    readonly Derived: "DERIVED";
    readonly Userid: "USERID";
};
export type UserAliasTypeEnum = typeof UserAliasTypeEnum[keyof typeof UserAliasTypeEnum];
/**
 * Specifies alternate emails for a particular user.
 * @export
 * @interface UserAlternateEmails
 */
export interface UserAlternateEmails {
    /**
     * Name of the email attribute.
     * @type {string}
     * @memberof UserAlternateEmails
     */
    'name'?: string;
    /**
     * Value of the email attribute.
     * @type {string}
     * @memberof UserAlternateEmails
     */
    'value'?: string;
}
/**
 * Information about user attribute definitions.
 * @export
 * @interface UserAttribute
 */
export interface UserAttribute {
    /**
     * The UUID for this user attribute.  Generated when the user attribute is created.
     * @type {string}
     * @memberof UserAttribute
     */
    'id'?: string;
    /**
     * A flag indicating if users must have a value for this user attribute.
     * @type {boolean}
     * @memberof UserAttribute
     */
    'mandatory': boolean;
    /**
     * The name of this user attribute.
     * @type {string}
     * @memberof UserAttribute
     */
    'name': string;
    /**
     * A flag indicating if this user attribute is one of the system defined user attributes.
     * @type {boolean}
     * @memberof UserAttribute
     */
    'systemDefined': boolean;
    /**
     * Type of user attribute. Currently only used to specify the type of contact if the attribute is to be used for OTP delivery.
     * @type {string}
     * @memberof UserAttribute
     */
    'type'?: UserAttributeTypeEnum;
    /**
     * A flag indicating if this attribute is intended to be unique.
     * @type {boolean}
     * @memberof UserAttribute
     */
    'unique': boolean;
}
export declare const UserAttributeTypeEnum: {
    readonly None: "NONE";
    readonly OtpEmail: "OTP_EMAIL";
    readonly OtpSms: "OTP_SMS";
    readonly OtpVoice: "OTP_VOICE";
    readonly OtpWechat: "OTP_WECHAT";
    readonly OtpWhatsapp: "OTP_WHATSAPP";
};
export type UserAttributeTypeEnum = typeof UserAttributeTypeEnum[keyof typeof UserAttributeTypeEnum];
/**
 * The parameters for the new user attribute.
 * @export
 * @interface UserAttributeParms
 */
export interface UserAttributeParms {
    /**
     * A flag indicating if users must have a value for this user attribute. If not specified when creating a user attribute if defaults to false.
     * @type {boolean}
     * @memberof UserAttributeParms
     */
    'mandatory'?: boolean;
    /**
     * The name of this user attribute. This must be specified when creating a user attribute.
     * @type {string}
     * @memberof UserAttributeParms
     */
    'name'?: string;
    /**
     * Type of user attribute.
     * @type {string}
     * @memberof UserAttributeParms
     */
    'type'?: UserAttributeParmsTypeEnum;
    /**
     * A flag indicating if this attribute is intended to be unique. If not specified when creating a user attribute it defaults to false.
     * @type {boolean}
     * @memberof UserAttributeParms
     */
    'unique'?: boolean;
}
export declare const UserAttributeParmsTypeEnum: {
    readonly None: "NONE";
    readonly OtpEmail: "OTP_EMAIL";
    readonly OtpSms: "OTP_SMS";
    readonly OtpVoice: "OTP_VOICE";
    readonly OtpWechat: "OTP_WECHAT";
    readonly OtpWhatsapp: "OTP_WHATSAPP";
};
export type UserAttributeParmsTypeEnum = typeof UserAttributeParmsTypeEnum[keyof typeof UserAttributeParmsTypeEnum];
/**
 * Specifies the value of a user attribute for a particular user.
 * @export
 * @interface UserAttributeValue
 */
export interface UserAttributeValue {
    /**
     * A flag indicating if this user attribute value can be modified.
     * @type {boolean}
     * @memberof UserAttributeValue
     */
    'editable'?: boolean;
    /**
     * The UUID of this user attribute value set when the user attribute value is created.
     * @type {string}
     * @memberof UserAttributeValue
     */
    'id'?: string;
    /**
     * The last time the attribute value was updated.
     * @type {string}
     * @memberof UserAttributeValue
     */
    'lastUpdate'?: string;
    /**
     *
     * @type {UserAttribute}
     * @memberof UserAttributeValue
     */
    'userAttribute'?: UserAttribute;
    /**
     * The UUID of the user attribute that defines this user attribute value.  The userAttributeId must be provided when creating or modifying a user attribute value.
     * @type {string}
     * @memberof UserAttributeValue
     */
    'userAttributeId'?: string;
    /**
     * The UUID of the user to which this user attribute value belongs.
     * @type {string}
     * @memberof UserAttributeValue
     */
    'userId'?: string;
    /**
     * The value for the user attribute.
     * @type {string}
     * @memberof UserAttributeValue
     */
    'value'?: string;
}
/**
 * Detailed lockout information for each authenticator for a particular user.
 * @export
 * @interface UserAuthenticatorLockoutStatus
 */
export interface UserAuthenticatorLockoutStatus {
    /**
     * The date the user was locked. Null means the user is not locked.
     * @type {string}
     * @memberof UserAuthenticatorLockoutStatus
     */
    'lockoutDate'?: string;
    /**
     * if remainingAuthenticationAttempts is 0 then a lockoutExpiryDate of null means the lockout never expires. Otherwise a value of null means the user isn\'t locked out.
     * @type {string}
     * @memberof UserAuthenticatorLockoutStatus
     */
    'lockoutExpiryDate'?: string;
    /**
     * The number of authentication attempts remaining before the user is locked out.
     * @type {number}
     * @memberof UserAuthenticatorLockoutStatus
     */
    'remainingAuthenticationAttempts'?: number;
    /**
     * The type of the authenticator.
     * @type {string}
     * @memberof UserAuthenticatorLockoutStatus
     */
    'type'?: UserAuthenticatorLockoutStatusTypeEnum;
}
export declare const UserAuthenticatorLockoutStatusTypeEnum: {
    readonly Machine: "MACHINE";
    readonly Password: "PASSWORD";
    readonly External: "EXTERNAL";
    readonly Kba: "KBA";
    readonly TempAccessCode: "TEMP_ACCESS_CODE";
    readonly Otp: "OTP";
    readonly Grid: "GRID";
    readonly Token: "TOKEN";
    readonly Tokencr: "TOKENCR";
    readonly Tokenpush: "TOKENPUSH";
    readonly Fido: "FIDO";
    readonly Smartcredentialpush: "SMARTCREDENTIALPUSH";
    readonly PasswordAndSecondfactor: "PASSWORD_AND_SECONDFACTOR";
    readonly SmartLogin: "SMART_LOGIN";
    readonly Idp: "IDP";
    readonly Passkey: "PASSKEY";
    readonly IdpAndSecondfactor: "IDP_AND_SECONDFACTOR";
    readonly UserCertificate: "USER_CERTIFICATE";
    readonly Face: "FACE";
    readonly Passthrough: "PASSTHROUGH";
    readonly Magiclink: "MAGICLINK";
};
export type UserAuthenticatorLockoutStatusTypeEnum = typeof UserAuthenticatorLockoutStatusTypeEnum[keyof typeof UserAuthenticatorLockoutStatusTypeEnum];
/**
 * User parameters including the new state of the user.
 * @export
 * @interface UserChangeStateParms
 */
export interface UserChangeStateParms {
    /**
     * The new state of the user.
     * @type {string}
     * @memberof UserChangeStateParms
     */
    'state'?: UserChangeStateParmsStateEnum;
}
export declare const UserChangeStateParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type UserChangeStateParmsStateEnum = typeof UserChangeStateParmsStateEnum[keyof typeof UserChangeStateParmsStateEnum];
/**
 * User entitlements of a tenant.
 * @export
 * @interface UserEntitlement
 */
export interface UserEntitlement {
    /**
     * The number of entitlements allotted to the current account.  If the account is an SP then entitlements can be allocated to child accounts. For subscriber accounts, the allotment is always the same as the quantity amount.
     * @type {number}
     * @memberof UserEntitlement
     */
    'allotment'?: number;
    /**
     * The used quantity of this entitlement.
     * @type {number}
     * @memberof UserEntitlement
     */
    'consumed'?: number;
    /**
     * The date when the entitlement ends.
     * @type {string}
     * @memberof UserEntitlement
     */
    'endDate'?: string;
    /**
     * The quantity of entitlements purchased for the account.
     * @type {number}
     * @memberof UserEntitlement
     */
    'quantity'?: number;
    /**
     * The date when the entitlement starts.
     * @type {string}
     * @memberof UserEntitlement
     */
    'startDate'?: string;
}
/**
 * Information about the expected locations stored for a user.
 * @export
 * @interface UserExpectedLocations
 */
export interface UserExpectedLocations {
    /**
     * The list of expected locations stored for this user.
     * @type {Array<ExpectedLocation>}
     * @memberof UserExpectedLocations
     */
    'expectedLocations': Array<ExpectedLocation>;
    /**
     * The maximum number of expected locations that can be stored for this user.
     * @type {number}
     * @memberof UserExpectedLocations
     */
    'maximumExpectedLocations': number;
}
/**
 * Specifies an extra optional attribute for a particular user.
 * @export
 * @interface UserExtraAttribute
 */
export interface UserExtraAttribute {
    /**
     * The UUID of this extra user attribute.
     * @type {string}
     * @memberof UserExtraAttribute
     */
    'id'?: string;
    /**
     * The name for the extra user attribute.
     * @type {string}
     * @memberof UserExtraAttribute
     */
    'name'?: string;
    /**
     * Type of custom user attribute.
     * @type {string}
     * @memberof UserExtraAttribute
     */
    'type'?: UserExtraAttributeTypeEnum;
    /**
     * The value for the extra user attribute.
     * @type {string}
     * @memberof UserExtraAttribute
     */
    'value'?: string;
}
export declare const UserExtraAttributeTypeEnum: {
    readonly None: "NONE";
    readonly OtpEmail: "OTP_EMAIL";
    readonly OtpSms: "OTP_SMS";
    readonly OtpVoice: "OTP_VOICE";
    readonly OtpWechat: "OTP_WECHAT";
    readonly OtpWhatsapp: "OTP_WHATSAPP";
};
export type UserExtraAttributeTypeEnum = typeof UserExtraAttributeTypeEnum[keyof typeof UserExtraAttributeTypeEnum];
/**
 * User settings for the Face Biometric authenticator.
 * @export
 * @interface UserFaceSettings
 */
export interface UserFaceSettings {
    /**
     * The lifetime of the authenticator in days.
     * @type {number}
     * @memberof UserFaceSettings
     */
    'lifetime': number;
}
/**
 * The user Id or user alias of the user to be fetched.
 * @export
 * @interface UserGetParms
 */
export interface UserGetParms {
    /**
     * If fetching a user by userId or alias, this value specifies, the userId or user alias of the user to be fetched. If fetching a user by externalId, this value specifies, the externalId of the user to be fetched.
     * @type {string}
     * @memberof UserGetParms
     */
    'userId': string;
}
/**
 * Information stored describing a user location.
 * @export
 * @interface UserLocation
 */
export interface UserLocation {
    /**
     * The city name--always returned in upper-case.
     * @type {string}
     * @memberof UserLocation
     */
    'city'?: string;
    /**
     * A two-character (alpha-2) ISO 3166-1  country code.
     * @type {string}
     * @memberof UserLocation
     */
    'countryCode'?: string;
    /**
     * The date this user location will expire.
     * @type {string}
     * @memberof UserLocation
     */
    'expiryDate'?: string;
    /**
     * The UUID of the user location.
     * @type {string}
     * @memberof UserLocation
     */
    'id': string;
    /**
     * The IPv4 Address.
     * @type {string}
     * @memberof UserLocation
     */
    'ipAddress'?: string;
    /**
     *  The ISP name--always returned in upper-case.
     * @type {string}
     * @memberof UserLocation
     */
    'isp'?: string;
    /**
     * The time of the last authentication from this location.
     * @type {string}
     * @memberof UserLocation
     */
    'lastAuthenticationTime': string;
    /**
     * The latitude.
     * @type {number}
     * @memberof UserLocation
     */
    'latitude'?: number;
    /**
     * The longitude.
     * @type {number}
     * @memberof UserLocation
     */
    'longitude'?: number;
    /**
     * The number of times this location was used during authentication.
     * @type {number}
     * @memberof UserLocation
     */
    'numberOfAuthentications': number;
    /**
     * Whether the IP provided is a private IP Address.
     * @type {boolean}
     * @memberof UserLocation
     */
    'privateIpAddress'?: boolean;
}
/**
 * UserMachineAuthenticator
 * @export
 * @interface UserMachineAuthenticator
 */
export interface UserMachineAuthenticator {
    /**
     * When this machine secret expires in UTC time
     * @type {string}
     * @memberof UserMachineAuthenticator
     */
    'expiryTime'?: string;
    /**
     * Identifies the device/machine
     * @type {string}
     * @memberof UserMachineAuthenticator
     */
    'id': string;
    /**
     * Identifies the device/machine from the end-user point of view
     * @type {string}
     * @memberof UserMachineAuthenticator
     */
    'label': string;
    /**
     * When this machine secret was last used
     * @type {string}
     * @memberof UserMachineAuthenticator
     */
    'lastUsedTime'?: string;
    /**
     * When this machine secret was created in UTC time
     * @type {string}
     * @memberof UserMachineAuthenticator
     */
    'registrationTime': string;
}
/**
 * Parameter with a list of organization UUIDs that will be assigned to the user.
 * @export
 * @interface UserOrganizationParms
 */
export interface UserOrganizationParms {
    /**
     * A list of organization UUIDs to be assigned to this user.  If specified, these organizations replace existing organizations.
     * @type {Array<string>}
     * @memberof UserOrganizationParms
     */
    'organizations'?: Array<string>;
}
/**
 * Attributes for the new user.
 * @export
 * @interface UserParms
 */
export interface UserParms {
    /**
     * Indicates if the user is granted a new frozen grace period. This value is not used when creating a user. If provided, it will be ignored.
     * @type {boolean}
     * @memberof UserParms
     */
    'applyGracePeriod'?: boolean;
    /**
     * The email address of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  It must be set to use EMAIL OTP authentication and other features that require an email address.  To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'email'?: string;
    /**
     * Indicates if a verification email message should be sent to the user if the user now requires verification. The user\'s policy requiring user verification must also be enabled for the user. If not set, this value defaults to true.
     * @type {boolean}
     * @memberof UserParms
     */
    'emailVerification'?: boolean;
    /**
     * An optional external ID for this user.  This value can be used to track the external identity of an Identity as a Service user. To unset the external ID, specify an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'externalId'?: string;
    /**
     * An optional value that describes the source when the user is synchronized from an external source. To unset the external source, specify an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'externalSource'?: string;
    /**
     * The first name of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'firstName'?: string;
    /**
     * A list of group UUIDs to be assigned to this user.  If specified, these groups replace existing groups.
     * @type {Array<string>}
     * @memberof UserParms
     */
    'groups'?: Array<string>;
    /**
     * The last name of this user.    This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'lastName'?: string;
    /**
     * The locale of this user.  If not set, the default account locale will be used. To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'locale'?: UserParmsLocaleEnum;
    /**
     * Indicates if all the user\'s authenticators are locked or not.
     * @type {boolean}
     * @memberof UserParms
     */
    'lock'?: boolean;
    /**
     * The mobile number of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  It must be set to use SMS OTP authentication.  To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'mobile'?: string;
    /**
     * A list of oauth role UUIDs to be assigned to this user.  If specified, these oauth roles replace existing oauth roles.
     * @type {Array<string>}
     * @memberof UserParms
     */
    'oauthRoles'?: Array<string>;
    /**
     * A list of organization UUIDs to be assigned to this user.  If specified, these organizations replace existing organizations.
     * @type {Array<string>}
     * @memberof UserParms
     */
    'organizations'?: Array<string>;
    /**
     * The phone number of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  It must be set to use VOICE OTP authentication.  To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'phone'?: string;
    /**
     * Preferred OTP delivery type (SMS, EMAIL or VOICE) or SYSTEM to use the system defined default.
     * @type {string}
     * @memberof UserParms
     */
    'preferredOtpDelivery'?: UserParmsPreferredOtpDeliveryEnum;
    /**
     * Preferred OTP delivery contact attribute for the given type (i.e., OTP_EMAIL, OTP_SMS, OTP_VOICE. An empty string means no override for that type).
     * @type {{ [key: string]: string; }}
     * @memberof UserParms
     */
    'preferredOtpDeliveryContactAttributes'?: {
        [key: string]: string;
    };
    /**
     * Indicates whether self-registration is required. If not set when the user is created, this value defaults to true.
     * @type {boolean}
     * @memberof UserParms
     */
    'registrationRequired'?: boolean;
    /**
     * The security ID of this user. The security ID is a unique value used to identity the user when performing smart card login to Microsoft Windows.
     * @type {string}
     * @memberof UserParms
     */
    'securityId'?: string;
    /**
     * The state of this user.  Only users in the ACTIVE state can perform authentication. If not set when the user is created, this value defaults to ACTIVE.
     * @type {string}
     * @memberof UserParms
     */
    'state'?: UserParmsStateEnum;
    /**
     * A list of user aliases for this user. Alias values must be unique with respect to the userId and other aliases of this user and other users.
     * @type {Array<UserAlias>}
     * @memberof UserParms
     */
    'userAliases'?: Array<UserAlias>;
    /**
     * A list of user attribute values for this user.
     * @type {Array<UserAttributeValue>}
     * @memberof UserParms
     */
    'userAttributeValues'?: Array<UserAttributeValue>;
    /**
     * A list of extra optional attributes for this user.
     * @type {Array<UserExtraAttribute>}
     * @memberof UserParms
     */
    'userExtraAttributes'?: Array<UserExtraAttribute>;
    /**
     * The user ID for this user.  This value is required when creating the user, optional during update. The userId must be unique with respect to aliases of this user and the userId and aliases of all other users.
     * @type {string}
     * @memberof UserParms
     */
    'userId'?: string;
    /**
     * The user principal name of this user.  This value may or may not be required depending on configuration.  If it is required, it must be specified when creating the user.  If it is required, it must be specified when updating the user and a value is not currently set.  To remove the existing value, set the value to an empty string.
     * @type {string}
     * @memberof UserParms
     */
    'userPrincipalName'?: string;
    /**
     * Indicates whether verification is required. If not set when the user is created, this value defaults to true.
     * @type {boolean}
     * @memberof UserParms
     */
    'verificationRequired'?: boolean;
}
export declare const UserParmsLocaleEnum: {
    readonly Da: "da";
    readonly De: "de";
    readonly En: "en";
    readonly Es: "es";
    readonly Fr: "fr";
    readonly It: "it";
    readonly Ja: "ja";
    readonly Ko: "ko";
    readonly Nl: "nl";
    readonly Nb: "nb";
    readonly Pl: "pl";
    readonly Pt: "pt";
    readonly Ru: "ru";
    readonly Sv: "sv";
    readonly Th: "th";
    readonly Tr: "tr";
    readonly ZhCn: "zh-cn";
    readonly ZhTw: "zh-tw";
};
export type UserParmsLocaleEnum = typeof UserParmsLocaleEnum[keyof typeof UserParmsLocaleEnum];
export declare const UserParmsPreferredOtpDeliveryEnum: {
    readonly Email: "EMAIL";
    readonly Sms: "SMS";
    readonly Voice: "VOICE";
    readonly System: "SYSTEM";
};
export type UserParmsPreferredOtpDeliveryEnum = typeof UserParmsPreferredOtpDeliveryEnum[keyof typeof UserParmsPreferredOtpDeliveryEnum];
export declare const UserParmsStateEnum: {
    readonly Active: "ACTIVE";
    readonly Inactive: "INACTIVE";
};
export type UserParmsStateEnum = typeof UserParmsStateEnum[keyof typeof UserParmsStateEnum];
/**
 * Information returned when a user password is queried.
 * @export
 * @interface UserPassword
 */
export interface UserPassword {
    /**
     * The date at which the next password expiry notification will be sent.
     * @type {string}
     * @memberof UserPassword
     */
    'expiryNotificationDate'?: string;
    /**
     * The date at which the password will expire.
     * @type {string}
     * @memberof UserPassword
     */
    'expiryTime'?: string;
    /**
     * Indicates if the user will be forced to change their password the next time the user authenticates with it.
     * @type {boolean}
     * @memberof UserPassword
     */
    'forceUpdate'?: boolean;
    /**
     * The last time the password was changed.
     * @type {string}
     * @memberof UserPassword
     */
    'lastChangedTime'?: string;
    /**
     * The value of the new password generated by IDaaS if requested by the client.
     * @type {string}
     * @memberof UserPassword
     */
    'newPassword'?: string;
    /**
     * A flag that indicates if the user has a password.
     * @type {boolean}
     * @memberof UserPassword
     */
    'present'?: boolean;
}
/**
 * Parameters specifying how the password is to be modified. This value may include an actual password or arguments specifying that the service should create a random password.
 * @export
 * @interface UserPasswordParms
 */
export interface UserPasswordParms {
    /**
     * If set to true, this flag indicates existing password history is cleared before the new password is created.
     * @type {boolean}
     * @memberof UserPasswordParms
     */
    'clearPasswordHistory'?: boolean;
    /**
     * A value for the current password when changing the AD-User password.
     * @type {string}
     * @memberof UserPasswordParms
     */
    'currentPassword'?: string;
    /**
     * A flag indicating whether to email a new password to the user.  It defaults to true.
     * @type {boolean}
     * @memberof UserPasswordParms
     */
    'emailPassword'?: boolean;
    /**
     * The date at which the password will expire.
     * @type {string}
     * @memberof UserPasswordParms
     */
    'expiryTime'?: string;
    /**
     * If set to true, this value indicates the user will be forced to change their password upon next password authentication.
     * @type {boolean}
     * @memberof UserPasswordParms
     */
    'forceUpdate'?: boolean;
    /**
     * A flag indicating whether a new random password is generated. It defaults to false.
     * @type {boolean}
     * @memberof UserPasswordParms
     */
    'generatePassword'?: boolean;
    /**
     * A value for the new password when setting the user password. This value is ignored if generatePassword is set to true.
     * @type {string}
     * @memberof UserPasswordParms
     */
    'password'?: string;
    /**
     * Define the password format of new password, it\'s BCRYPT when importing BCrypted password, it\'s GETACCESS when importing GetAccess password,it defaults to CLEARTEXT if not provided.When passwordFormat is BCRYPT or GETACCESS, the following restrictions must be enforced:<ul><li>1.the user must be an IDaaS local user.</li><li>2.currentPassword must be null.</li><li>3.generatePassword must be false.</li><li>4.emailPassword must be false.</li><li>5.returnPassword must be false.</li></ul>
     * @type {string}
     * @memberof UserPasswordParms
     */
    'passwordFormat'?: UserPasswordParmsPasswordFormatEnum;
    /**
     * A flag indicating if a password generated by IDaaS should be returned to the caller. This flag is ignored  if the password is passed from the client.  It defaults to false.
     * @type {boolean}
     * @memberof UserPasswordParms
     */
    'returnPassword'?: boolean;
}
export declare const UserPasswordParmsPasswordFormatEnum: {
    readonly Cleartext: "CLEARTEXT";
    readonly Bcrypt: "BCRYPT";
    readonly Getaccess: "GETACCESS";
};
export type UserPasswordParmsPasswordFormatEnum = typeof UserPasswordParmsPasswordFormatEnum[keyof typeof UserPasswordParmsPasswordFormatEnum];
/**
 * UserPasswordSettings
 * @export
 * @interface UserPasswordSettings
 */
export interface UserPasswordSettings {
    /**
     * A boolean flag indication if adComplexity is enabled.
     * @type {boolean}
     * @memberof UserPasswordSettings
     */
    'adComplexity'?: boolean;
    /**
     * Specifies if an lowercase character is required, allowed or not allowed in the password.
     * @type {string}
     * @memberof UserPasswordSettings
     */
    'includeLowercase'?: UserPasswordSettingsIncludeLowercaseEnum;
    /**
     * Specifies if non-alphanumeric character is required, allowed or not allowed in the password.
     * @type {string}
     * @memberof UserPasswordSettings
     */
    'includeNonalphanumeric'?: UserPasswordSettingsIncludeNonalphanumericEnum;
    /**
     * Specifies if a numeric character is required, allowed or not allowed in the password.
     * @type {string}
     * @memberof UserPasswordSettings
     */
    'includeNumber'?: UserPasswordSettingsIncludeNumberEnum;
    /**
     * Specifies if an uppercase character is required, allowed or not allowed in the password.
     * @type {string}
     * @memberof UserPasswordSettings
     */
    'includeUppercase'?: UserPasswordSettingsIncludeUppercaseEnum;
    /**
     * The lifetime of the password in days.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'lifetimeDays'?: number;
    /**
     * The maximum length of the password.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'maximumLength'?: number;
    /**
     * Maximum number of repeated characters allowed
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'maximumRepeated'?: number;
    /**
     * The minimum length of the password.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'minimumLength'?: number;
    /**
     * The minimum lifetime of the password restricting how frequently the password can be changed.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'minimumLifetime'?: number;
    /**
     * Minimum password strength. Password set/update will be rejected, if strength of the password is less than this value. 0: Disabled, 1: Weak protection from throttled online attacks: very guessable, 3: Good protection from offline attacks: safely unguessable, 4: Strong protection from offline attacks: very unguessable
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'minimumStrength'?: number;
    /**
     * Number of lower case characters required.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'numberOfLowercaseRequired'?: number;
    /**
     * Required number of non alpha numeric characters required.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'numberOfNonalphanumericRequired'?: number;
    /**
     * Number of numeric characters required.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'numberOfNumericRequired'?: number;
    /**
     * Number of upper case characters required.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'numberOfUppercaseRequired'?: number;
    /**
     * Size of password history for a user.
     * @type {number}
     * @memberof UserPasswordSettings
     */
    'passwordHistorySize'?: number;
}
export declare const UserPasswordSettingsIncludeLowercaseEnum: {
    readonly Required: "REQUIRED";
    readonly Allowed: "ALLOWED";
    readonly NotAllowed: "NOT_ALLOWED";
};
export type UserPasswordSettingsIncludeLowercaseEnum = typeof UserPasswordSettingsIncludeLowercaseEnum[keyof typeof UserPasswordSettingsIncludeLowercaseEnum];
export declare const UserPasswordSettingsIncludeNonalphanumericEnum: {
    readonly Required: "REQUIRED";
    readonly Allowed: "ALLOWED";
    readonly NotAllowed: "NOT_ALLOWED";
};
export type UserPasswordSettingsIncludeNonalphanumericEnum = typeof UserPasswordSettingsIncludeNonalphanumericEnum[keyof typeof UserPasswordSettingsIncludeNonalphanumericEnum];
export declare const UserPasswordSettingsIncludeNumberEnum: {
    readonly Required: "REQUIRED";
    readonly Allowed: "ALLOWED";
    readonly NotAllowed: "NOT_ALLOWED";
};
export type UserPasswordSettingsIncludeNumberEnum = typeof UserPasswordSettingsIncludeNumberEnum[keyof typeof UserPasswordSettingsIncludeNumberEnum];
export declare const UserPasswordSettingsIncludeUppercaseEnum: {
    readonly Required: "REQUIRED";
    readonly Allowed: "ALLOWED";
    readonly NotAllowed: "NOT_ALLOWED";
};
export type UserPasswordSettingsIncludeUppercaseEnum = typeof UserPasswordSettingsIncludeUppercaseEnum[keyof typeof UserPasswordSettingsIncludeUppercaseEnum];
/**
 * UserPasswordStrength
 * @export
 * @interface UserPasswordStrength
 */
export interface UserPasswordStrength {
    /**
     * Evaluated password strength score. <br/><br/> 0:very weak | 1:weak | 2:average | 3:good | 4:strong
     * @type {number}
     * @memberof UserPasswordStrength
     */
    'score'?: number;
    /**
     * Suggestions on how the password strength can be improved.
     * @type {Array<string>}
     * @memberof UserPasswordStrength
     */
    'suggestions'?: Array<string>;
}
/**
 * UserPasswordValidationParms
 * @export
 * @interface UserPasswordValidationParms
 */
export interface UserPasswordValidationParms {
    /**
     * If set to true, existing password history is ignored.
     * @type {boolean}
     * @memberof UserPasswordValidationParms
     */
    'ignorePasswordHistory'?: boolean;
    /**
     * New password value that needs to be validated.
     * @type {string}
     * @memberof UserPasswordValidationParms
     */
    'password'?: string;
}
/**
 * UserPasswordValidationResponse
 * @export
 * @interface UserPasswordValidationResponse
 */
export interface UserPasswordValidationResponse {
    /**
     * True if password meets the active directory complexity requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'adComplexity'?: boolean;
    /**
     * True if password meets the userId requirements. Password must not contain user alias.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'alias'?: boolean;
    /**
     * True if password meets the alpha numeric requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'alphaNumeric'?: boolean;
    /**
     * True if password does not contain a blacklisted password.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'blacklisted'?: boolean;
    /**
     * Type of the directory the user is associated with, ON_PREM, AZURE or AD Connector.
     * @type {string}
     * @memberof UserPasswordValidationResponse
     */
    'directoryType'?: UserPasswordValidationResponseDirectoryTypeEnum;
    /**
     * True if password meets the full name requirements. Full Name must not be in the password.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'fullName'?: boolean;
    /**
     * True if password meets the length requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'length'?: boolean;
    /**
     * True if password meets the lower case requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'lowerCase'?: boolean;
    /**
     * List of validations that cannot be determined mostly due to user is AD managed.
     * @type {Array<string>}
     * @memberof UserPasswordValidationResponse
     */
    'nondeterministicValidations'?: Array<string>;
    /**
     * True if password meets the numeric requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'numeric'?: boolean;
    /**
     * True if password does not match the history if enabled.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'passwordHistory'?: boolean;
    /**
     * True if password meets the repeated characters requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'repeatedCharacters'?: boolean;
    /**
     * True if password meets the minimum strength requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'strength'?: boolean;
    /**
     * True if password meets the upper case requirements.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'upperCase'?: boolean;
    /**
     * True if password meets the userId requirements. Password must not contain userId.
     * @type {boolean}
     * @memberof UserPasswordValidationResponse
     */
    'userID'?: boolean;
    /**
     *
     * @type {UserPasswordStrength}
     * @memberof UserPasswordValidationResponse
     */
    'userPasswordStrength'?: UserPasswordStrength;
}
export declare const UserPasswordValidationResponseDirectoryTypeEnum: {
    readonly OnPrem: "ON_PREM";
    readonly Azure: "AZURE";
    readonly AdConnector: "AD_CONNECTOR";
};
export type UserPasswordValidationResponseDirectoryTypeEnum = typeof UserPasswordValidationResponseDirectoryTypeEnum[keyof typeof UserPasswordValidationResponseDirectoryTypeEnum];
/**
 * A KBA question/answer stored for a user.
 * @export
 * @interface UserQuestion
 */
export interface UserQuestion {
    /**
     * The question\'s answer.
     * @type {string}
     * @memberof UserQuestion
     */
    'answer'?: string;
    /**
     * The UUID of the KBA question/answer.
     * @type {string}
     * @memberof UserQuestion
     */
    'id'?: string;
    /**
     * The question.
     * @type {string}
     * @memberof UserQuestion
     */
    'question'?: string;
}
/**
 * The new RBA settings.
 * @export
 * @interface UserRbaSettings
 */
export interface UserRbaSettings {
    /**
     * A flag indicating if the IP address is considered when checking to see if two locations are the same.
     * @type {boolean}
     * @memberof UserRbaSettings
     */
    'locationHistoryIpCheckRequired'?: boolean;
    /**
     * The maximum number of user locations stored in location history.
     * @type {number}
     * @memberof UserRbaSettings
     */
    'maximumLocationHistory'?: number;
    /**
     * A flag indicating if a velocity check is performed when checking the current location against location history.
     * @type {boolean}
     * @memberof UserRbaSettings
     */
    'velocityCheckRequired'?: boolean;
}
/**
 * Contains paging information and the results from a user search.
 * @export
 * @interface UsersPage
 */
export interface UsersPage {
    /**
     *
     * @type {Paging}
     * @memberof UsersPage
     */
    'paging'?: Paging;
    /**
     * A single page with the list of users found.
     * @type {Array<User>}
     * @memberof UsersPage
     */
    'results': Array<User>;
}
/**
 * Information returned about a webhook.
 * @export
 * @interface Webhook
 */
export interface Webhook {
    /**
     * The callback url of the webhook.
     * @type {string}
     * @memberof Webhook
     */
    'callbackUrl': string;
    /**
     * A flag indicating if the webhook is enabled.
     * @type {boolean}
     * @memberof Webhook
     */
    'enabled': boolean;
    /**
     * The events of the webhook.
     * @type {Array<WebhookEvent>}
     * @memberof Webhook
     */
    'events'?: Array<WebhookEvent>;
    /**
     * A flag indicating if the webhook has expired.
     * @type {boolean}
     * @memberof Webhook
     */
    'expired'?: boolean;
    /**
     * The timestamp of when the webhook is set to expire. If no expiry is set, this value will be NULL.
     * @type {string}
     * @memberof Webhook
     */
    'expiryDate'?: string;
    /**
     * The ID of the webhook. This value is generated when the webhook is created.
     * @type {string}
     * @memberof Webhook
     */
    'id': string;
    /**
     * The unique webhook token.
     * @type {string}
     * @memberof Webhook
     */
    'token'?: string;
}
/**
 * Information returned about the events of a webhook.
 * @export
 * @interface WebhookEvent
 */
export interface WebhookEvent {
    /**
     * Subset of resource, or group IDs of the webhook event. All resources are selected by default if this parameter is not specified.
     * @type {string}
     * @memberof WebhookEvent
     */
    'filter'?: string;
    /**
     * The ID of the webhook event. This value is not needed when creating/updating a webhook.
     * @type {string}
     * @memberof WebhookEvent
     */
    'id'?: string;
    /**
     * The event type set to trigger the webhook.
     * @type {string}
     * @memberof WebhookEvent
     */
    'type': string;
}
/**
 * Parameters including the callback URL and list of events to trigger the webhook.
 * @export
 * @interface WebhookParms
 */
export interface WebhookParms {
    /**
     * The client callback url for this webhook.
     * @type {string}
     * @memberof WebhookParms
     */
    'callbackUrl': string;
    /**
     * A flag indicating if the webhook is enabled.
     * @type {boolean}
     * @memberof WebhookParms
     */
    'enabled'?: boolean;
    /**
     * The list of webhook events.
     * @type {Array<WebhookEvent>}
     * @memberof WebhookParms
     */
    'events': Array<WebhookEvent>;
    /**
     * How long to keep the webhook alive for <b>(in days)</b>. Value of 0 means no expiration. Once a webhook has reached expiry, it will be marked as <b>disabled</b>. This parameter is optional and is not set by default.
     * @type {number}
     * @memberof WebhookParms
     */
    'expiry'?: number;
}
export declare class API extends BaseAPI {
    setApiKey: (apiKey: string) => void;
    /**
     * AccountInfoApi - axios parameter creator
     */
    private AccountInfoApiAxiosParamCreator;
    /**
     * AccountInfoApi - functional programming interface
     * @export
     */
    private AccountInfoApiFp;
    getAccoutInfoUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AccountInfo, any>>;
    getServiceIPAddressesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ServiceIPAddresses, any>>;
    updateAccountInfoUsingPUT(accountInfoParms: AccountInfoParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * AdminAuthApi - axios parameter creator
     */
    private AdminAuthApiAxiosParamCreator;
    /**
     * AdminAuthApi - functional programming interface
     * @export
     */
    private AdminAuthApiFp;
    authenticateAdminApiUsingPOST(adminApiAuthentication: AdminApiAuthentication, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminApiAuthenticationResult, any>>;
    /**
     * ApplicationsApi - axios parameter creator
     */
    private ApplicationsApiAxiosParamCreator;
    /**
     * ApplicationsApi - functional programming interface
     * @export
     */
    private ApplicationsApiFp;
    createAdminApiApplicationUsingPOST(adminApiApplicationParms: AdminApiApplicationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminApiApplication, any>>;
    createAuthApiApplicationUsingPOST(authApiApplicationParms: AuthApiApplicationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthApiApplication, any>>;
    getAdminApiApplicationUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminApiApplication, any>>;
    getAuthApiApplicationUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthApiApplication, any>>;
    listAdminApiApplicationsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminApiApplication[], any>>;
    listApplicationInfoUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ApplicationInfo[], any>>;
    listApplicationTemplatesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ApplicationTemplate[], any>>;
    listAuthApiApplicationsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthApiApplication[], any>>;
    removeAdminApiApplicationUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    removeAuthApiApplicationUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateAdminApiApplicationUsingPUT(id: string, adminApiApplicationParms: AdminApiApplicationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AdminApiApplication, any>>;
    updateAdminApiSharedSecretUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<string, any>>;
    updateAuthApiApplicationUsingPUT(id: string, authApiApplicationParms: AuthApiApplicationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * DevicesApi - axios parameter creator
     */
    private DevicesApiAxiosParamCreator;
    /**
     * DevicesApi - functional programming interface
     * @export
     */
    private DevicesApiFp;
    getActiveSyncDevicesUsingPOST(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SdpResponse[], any>>;
    getCachedActiveSyncDevicesUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SdpResponse[], any>>;
    removeActiveSyncDeviceUsingDELETE(userid: string, deviceid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SdpResponse[], any>>;
    updateActiveSyncDevicesUsingPUT(userid: string, sdpParms: SdpParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SdpResponse[], any>>;
    /**
     * DirectoriesApi - axios parameter creator
     */
    private DirectoriesApiAxiosParamCreator;
    /**
     * DirectoriesApi - functional programming interface
     * @export
     */
    private DirectoriesApiFp;
    getDirectoryAttrMappingUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DirectoryAttributeMapping, any>>;
    getDirectoryAttrMappingsUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DirectoryAttributeMapping[], any>>;
    getDirectorySyncStatusInfoUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DirectorySyncStatusInfo, any>>;
    getDirectorySyncUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DirectorySync, any>>;
    getDirectorySyncsUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DirectorySync[], any>>;
    getDirectoryUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Directory, any>>;
    getGroupFilterUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GroupFilter, any>>;
    getGroupFiltersUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GroupFilter[], any>>;
    getSearchBaseUsingGET(searchbaseid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SearchBase, any>>;
    getSearchBasesUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SearchBase[], any>>;
    listDirectoriesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Directory[], any>>;
    /**
     * EntitlementsApi - axios parameter creator
     */
    private EntitlementsApiAxiosParamCreator;
    /**
     * EntitlementsApi - functional programming interface
     * @export
     */
    private EntitlementsApiFp;
    getSubscriberAccountActiveEntitlementsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AccountEntitlement, any>>;
    /**
     * FIDOTokensApi - axios parameter creator
     */
    private FIDOTokensApiAxiosParamCreator;
    /**
     * FIDOTokensApi - functional programming interface
     * @export
     */
    private FIDOTokensApiFp;
    completeCreateFIDOTokenUsingPOST(id: string, fIDORegisterResponse: FIDORegisterResponse, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FIDOToken, any>>;
    deleteFIDOTokenUsingDELETE(fidoid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getFIDOTokenUsingGET(fidoid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FIDOToken, any>>;
    startCreateFIDOTokenUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FIDORegisterChallenge, any>>;
    updateFIDOTokenUsingPUT(fidoid: string, fIDOTokenParms: FIDOTokenParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * FaceApi - axios parameter creator
     */
    private FaceApiAxiosParamCreator;
    /**
     * FaceApi - functional programming interface
     * @export
     */
    private FaceApiFp;
    createFaceAuthenticatorUsingPOST(userid: string, faceCreateParms: FaceCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FaceCreateResponse, any>>;
    createFaceUsingPOST(userid: string, faceCreateParms: FaceCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FaceAuthenticator, any>>;
    deleteFaceUsingDELETE(faceid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getFacesUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FaceAuthenticator[], any>>;
    getUserFaceSettingsUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserFaceSettings, any>>;
    sendFaceActivationEmailUsingPUT(faceid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateFaceUsingPUT(userid: string, faceUpdateParms: FaceUpdateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * GridsApi - axios parameter creator
     */
    private GridsApiAxiosParamCreator;
    /**
     * GridsApi - functional programming interface
     * @export
     */
    private GridsApiFp;
    assignGridByIdUsingPUT(gridserialnumber: string, gridAssignParms: GridAssignParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    assignGridBySerialNumberUsingPUT(id: string, gridAssignParms: GridAssignParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    assignedGridsPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GridsPage, any>>;
    changeGridStateUsingPUT(gridid: string, gridChangeStateParms: GridChangeStateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    createGridUsingPOST(userid: string, gridCreateParms?: GridCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Grid, any>>;
    createUnassignedGridsUsingPOST(gridCreateParms: GridCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Grid[], any>>;
    deleteGridUsingDELETE(gridid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deliverAssignedGridByEmailUsingPOST(gridid: string, emailParms?: EmailParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getGridBySerialNumberUsingGET(sernum: number, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Grid, any>>;
    getGridPropertiesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GridProperties, any>>;
    getGridUsingGET(gridid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Grid, any>>;
    getSingleGridExportUsingGET(gridid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GridExport, any>>;
    modifyUnassignedGridUsingPUT(gridid: string, gridParms: GridParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    unassignGridUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    unassignedGridsPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GridsPage, any>>;
    /**
     * GroupsApi - axios parameter creator
     */
    private GroupsApiAxiosParamCreator;
    /**
     * GroupsApi - functional programming interface
     * @export
     */
    private GroupsApiFp;
    createGroupUsingPOST(groupParms: GroupParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Group, any>>;
    deleteGroupUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    groupByExternalIdUsingPOST(groupId: GroupId, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Group, any>>;
    groupUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Group, any>>;
    groupsPagedUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GroupsPage, any>>;
    groupsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Group[], any>>;
    modifyUserAuthorizationGroupAssociationsUsingPUT(userid: string, requestBody: Array<string>, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateGroupUsingPUT(id: string, groupParms: GroupParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Group, any>>;
    /**
     * IdentityProvidersApi - axios parameter creator
     */
    private IdentityProvidersApiAxiosParamCreator;
    /**
     * IdentityProvidersApi - functional programming interface
     * @export
     */
    private IdentityProvidersApiFp;
    createOidcIdentityProviderUsingPOST(oidcIdentityProviderParms: OidcIdentityProviderParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OidcIdentityProvider, any>>;
    createSamlIdentityProviderUsingPOST(samlIdentityProviderParms: SamlIdentityProviderParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SamlIdentityProvider, any>>;
    deleteOidcIdentityProviderUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deleteSamlIdentityProviderUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    fetchOidcConfigurationUsingPOST(oidcConfigurationParms: OidcConfigurationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OidcConfigurationResponse, any>>;
    getOidcIdentityProviderUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OidcIdentityProvider, any>>;
    getSamlIdentityProviderUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SamlIdentityProvider, any>>;
    listIdentityProvidersUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<IdentityProvider[], any>>;
    listOidcIdentityProvidersUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OidcIdentityProvider[], any>>;
    listSamlIdentityProvidersUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SamlIdentityProvider[], any>>;
    updateOidcIdentityProviderUsingPUT(id: string, oidcIdentityProviderParms: OidcIdentityProviderParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OidcIdentityProvider, any>>;
    updateSamlIdentityProviderUsingPUT(id: string, samlIdentityProviderParms: SamlIdentityProviderParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SamlIdentityProvider, any>>;
    /**
     * KBAApi - axios parameter creator
     */
    private KBAApiAxiosParamCreator;
    /**
     * KBAApi - functional programming interface
     * @export
     */
    private KBAApiFp;
    addKnowledgeBasedAuthenticatorUsingPOST(userid: string, knowledgeBasedAuthenticator: KnowledgeBasedAuthenticator, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deleteUserKbaChallengesUsingDELETE(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deleteUserKbaQuestionUsingDELETE(userid: string, id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deleteUserKbaUsingDELETE(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getKbaQuestionsUsingGET(locale: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserQuestion[], any>>;
    getUserKbaUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<KnowledgeBasedAuthenticator, any>>;
    updateKnowledgeBasedAuthenticatorUsingPUT(userid: string, knowledgeBasedAuthenticator: KnowledgeBasedAuthenticator, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * MachineAuthApi - axios parameter creator
     */
    private MachineAuthApiAxiosParamCreator;
    /**
     * MachineAuthApi - functional programming interface
     * @export
     */
    private MachineAuthApiFp;
    createMachineAuthenticatorUsingPOST(userid: string, machineAuthenticatorRegistration: MachineAuthenticatorRegistration, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<MachineAuthenticatorRegistrationResult, any>>;
    deleteMachineAuthenticatorUsingDELETE(userid: string, id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    listMachineAuthenticatorsUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserMachineAuthenticator[], any>>;
    /**
     * MagicLinkApi - axios parameter creator
     */
    private MagicLinkApiAxiosParamCreator;
    /**
     * MagicLinkApi - functional programming interface
     * @export
     */
    private MagicLinkApiFp;
    createMagicLinkUsingPUT(userid: string, magicLinkCreateParms: MagicLinkCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<MagicLinkResponse, any>>;
    deleteMagicLinkUsingDELETE(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getMagicLinkUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<MagicLink, any>>;
    /**
     * OAuthRolesApi - axios parameter creator
     */
    private OAuthRolesApiAxiosParamCreator;
    /**
     * OAuthRolesApi - functional programming interface
     * @export
     */
    private OAuthRolesApiFp;
    listOAuthRolesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OAuthRole[], any>>;
    modifyUserOAuthRoleAssociationsUsingPUT(userid: string, requestBody: Array<string>, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * OTPsApi - axios parameter creator
     */
    private OTPsApiAxiosParamCreator;
    /**
     * OTPsApi - functional programming interface
     * @export
     */
    private OTPsApiFp;
    contactVerificationAuthenticateUsingPOST(oTPVerificationAuthenticateValue: OTPVerificationAuthenticateValue, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OTPVerificationAuthenticateResponse, any>>;
    contactVerificationChallengeUsingPOST(oTPVerificationChallengeValue: OTPVerificationChallengeValue, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OTPVerificationChallengeResponse, any>>;
    createOTPUsingPOST(oTPCreateParms: OTPCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OTP, any>>;
    /**
     * OrganizationsApi - axios parameter creator
     */
    private OrganizationsApiAxiosParamCreator;
    /**
     * OrganizationsApi - functional programming interface
     * @export
     */
    private OrganizationsApiFp;
    createOrganizationUsingPOST(organizationParms: OrganizationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Organization, any>>;
    createUserOrganizationAssociationUsingPOST(orgid: string, userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deleteUserOrganizationAssociationUsingDELETE(orgid: string, userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getOrganizationUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Organization, any>>;
    organizationsPagedUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OrganizationPage, any>>;
    removeOrganizationUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateOrganizationUsingPUT(id: string, organizationParms: OrganizationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Organization, any>>;
    /**
     * PasswordsApi - axios parameter creator
     */
    private PasswordsApiAxiosParamCreator;
    /**
     * PasswordsApi - functional programming interface
     * @export
     */
    private PasswordsApiFp;
    deleteUserPasswordUsingDELETE(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getUserPasswordSettingsUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserPasswordSettings, any>>;
    getUserPasswordUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserPassword, any>>;
    sendPasswordExpiryNotificationUsingPUT(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    setUserPasswordUsingPUT(userid: string, userPasswordParms: UserPasswordParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserPassword, any>>;
    validateUserPasswordUsingPOST(userid: string, userPasswordValidationParms: UserPasswordValidationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserPasswordValidationResponse, any>>;
    /**
     * ReportsApi - axios parameter creator
     */
    private ReportsApiAxiosParamCreator;
    /**
     * ReportsApi - functional programming interface
     * @export
     */
    private ReportsApiFp;
    auditEventPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuditEventPage, any>>;
    siemAuditEventPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuditEventPage, any>>;
    /**
     * ResourceRulesApi - axios parameter creator
     */
    private ResourceRulesApiAxiosParamCreator;
    /**
     * ResourceRulesApi - functional programming interface
     * @export
     */
    private ResourceRulesApiFp;
    createAcrUsingPOST(acrParms: AcrParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Acr, any>>;
    createAuthenticationFlowUsingPOST(authenticationFlowParms: AuthenticationFlowParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthenticationFlow, any>>;
    createResourceRuleUsingPOST(resourceRuleParms: ResourceRuleParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ResourceRule, any>>;
    getAcrUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Acr, any>>;
    getAcrsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Acr[], any>>;
    getAuthenticationFlowUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthenticationFlow, any>>;
    getAuthenticationFlowsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthenticationFlow[], any>>;
    getResourceRuleUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ResourceRule, any>>;
    getResourceRulesForResourceUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ResourceRule[], any>>;
    getResourceRulesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ResourceRule[], any>>;
    getTransactionRulesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<TransactionRuleDescription[], any>>;
    listDomainBasedIdentityProvidersUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<IdentityProvider[], any>>;
    removeAcrUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    removeAuthenticationFlowUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DeleteAuthenticationFlowResult, any>>;
    removeResourceRuleUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateAuthenticationFlowUsingPUT(id: string, authenticationFlowParms: AuthenticationFlowParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<AuthenticationFlow, any>>;
    updateResourceRuleUsingPUT(id: string, resourceRuleParms: ResourceRuleParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * RolesApi - axios parameter creator
     */
    private RolesApiAxiosParamCreator;
    /**
     * RolesApi - functional programming interface
     * @export
     */
    private RolesApiFp;
    deleteUserSiteRoleAssociationUsingDELETE(userid: string, roleid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getSiteRoleUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Role, any>>;
    getUserRolesUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Role[], any>>;
    getUserSiteRoleAssociationUsingGET(userid: string, roleid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Role, any>>;
    listSiteRolesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<RoleUser[], any>>;
    modifyUserSiteRoleAssociationUsingPUT(userid: string, roleid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * SettingsApi - axios parameter creator
     */
    private SettingsApiAxiosParamCreator;
    /**
     * SettingsApi - functional programming interface
     * @export
     */
    private SettingsApiFp;
    fetchAndroidAssociationFileUsingPOST(fIDOAssociationFileRequest: FIDOAssociationFileRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FIDOAndroidAssetLinks[], any>>;
    fetchAppleAssociationFileUsingPOST(fIDOAssociationFileRequest: FIDOAssociationFileRequest, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FIDOAppleAppSiteAssociation, any>>;
    getEntrustSTAuthenticatorSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<EntrustSTAuthenticatorSettings, any>>;
    getFIDOSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FIDOAuthenticatorSettings, any>>;
    getFaceAccountSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<FaceAccountSettings, any>>;
    getGeneralSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GeneralSettings, any>>;
    getGoogleAuthenticatorSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<GoogleAuthenticatorSettings, any>>;
    getOTPAuthenticatorSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<OTPAuthenticatorSettings, any>>;
    getPasswordResetSettingsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<PasswordResetSettings, any>>;
    setFaceAccountSettingsUsingPUT(faceAccountSettings: FaceAccountSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateEntrustSTAuthenticatorSettingsUsingPUT(entrustSTAuthenticatorSettings: EntrustSTAuthenticatorSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateFIDOSettingsUsingPUT(fIDOAuthenticatorSettingsParms: FIDOAuthenticatorSettingsParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateGeneralSettingsUsingPUT(generalSettings: GeneralSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateGoogleAuthenticatorSettingsUsingPUT(googleAuthenticatorSettings: GoogleAuthenticatorSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateOTPAuthenticatorSettingsUsingPUT(oTPAuthenticatorSettings: OTPAuthenticatorSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updatePasswordResetSettingsUsingPUT(passwordResetSettings: PasswordResetSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * SmartCredentialsApi - axios parameter creator
     */
    private SmartCredentialsApiAxiosParamCreator;
    /**
     * SmartCredentialsApi - functional programming interface
     * @export
     */
    private SmartCredentialsApiFp;
    activateSmartCredentialUsingPUT(id: string, activateSmartCredentialParms: ActivateSmartCredentialParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ActivateSmartCredentialResult, any>>;
    changeSmartCredentialStateUsingPUT(id: string, smartCredentialChangeStateParms: SmartCredentialChangeStateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    completeSignSmartCredentialUsingPUT(id: string, smartCredentialCompleteSignParms: SmartCredentialCompleteSignParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SmartCredentialCompleteSignResponse, any>>;
    createSmartCredentialUsingPOST(smartCredentialParms: SmartCredentialParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SmartCredential, any>>;
    deleteSmartCredentialUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    exportCertificateUsingGET(id: string, format: 'CA' | 'P7' | 'CERT', options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ExportCertificate, any>>;
    getSCDefnByNameUsingPOST(sCDefnGetParms: SCDefnGetParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SCDefn, any>>;
    getSCDefnUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SCDefn, any>>;
    getSmartCredentialBySerialNumberUsingGET(sernum: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SmartCredential, any>>;
    getSmartCredentialUsingGET(id: string, revocationInfo?: boolean, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SmartCredential, any>>;
    holdCertificateUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    listAllowedSCDefnsUsingGET(userId: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SCDefn[], any>>;
    listSCDefnsUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SCDefn[], any>>;
    revokeCertificateUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    startSignSmartCredentialUsingPUT(id: string, smartCredentialStartSignParms: SmartCredentialStartSignParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SmartCredentialStartSignResponse, any>>;
    unassignSmartCredentialUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    unblockSmartCredentialUsingPUT(id: string, smartCredentialUnblockParms: SmartCredentialUnblockParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SmartCredentialUnblockResponse, any>>;
    unholdCertificateUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateSmartCredentialUsingPUT(id: string, smartCredentialParms: SmartCredentialParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * TempAccessCodesApi - axios parameter creator
     */
    private TempAccessCodesApiAxiosParamCreator;
    /**
     * TempAccessCodesApi - functional programming interface
     * @export
     */
    private TempAccessCodesApiFp;
    createTempAccessCodeUsingPOST(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<TempAccessCode, any>>;
    deleteTempAccessCodeUsingDELETE(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getTempAccessCodeUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<TempAccessCode, any>>;
    /**
     * TenantsApi - axios parameter creator
     */
    private TenantsApiAxiosParamCreator;
    /**
     * TenantsApi - functional programming interface
     * @export
     */
    private TenantsApiFp;
    createTenantAsyncUsingPOST(createTenantParms: CreateTenantParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateTenantAsyncStatus, any>>;
    createTenantUsingPOST(createTenantParms: CreateTenantParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateTenantResult, any>>;
    deleteTenantEntitlementUsingDELETE(tenantid: string, type: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getCreateTenantAsyncResultUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateTenantResult, any>>;
    getCreateTenantAsyncStatusUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateTenantAsyncStatus, any>>;
    getEntitlementUsageInfoUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UsageInfoPage, any>>;
    getSpIdentityProviderUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SpIdentityProvider, any>>;
    getTenantEntitlementUsingGET(tenantid: string, type: 'USERS' | 'TRANSACTIONS', options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Entitlement, any>>;
    getTenantEntitlementsUsingGET(tenantid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Entitlement[], any>>;
    getTenantUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Tenant, any>>;
    getTenantsPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<TenantsPage, any>>;
    lockTenantUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    removeTenantUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    setSpIdentityProviderUsingPUT(id: string, spIdentityProviderParms: SpIdentityProviderParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SpIdentityProvider, any>>;
    setTenantEntitlementUsingPUT(tenantid: string, entitlementParms: EntitlementParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    unlockTenantUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * TokensApi - axios parameter creator
     */
    private TokensApiAxiosParamCreator;
    /**
     * TokensApi - functional programming interface
     * @export
     */
    private TokensApiFp;
    assignTokenByIdUsingPUT(tokenid: string, assignParms: AssignParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    assignTokenBySerialNumberUsingPUT(id: string, assignParms: AssignParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    assignedTokenPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<TokensPage, any>>;
    changeTokenStateUsingPUT(tokenid: string, changeStateParms: ChangeStateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    completeActivateTokenUsingPUT(tokenid: string, activateCompleteParms: ActivateCompleteParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    createTokenUsingPOST(userid: string, type: 'ENTRUST_PHYSICAL_TOKEN' | 'ENTRUST_SOFT_TOKEN' | 'GOOGLE_AUTHENTICATOR' | 'OATH_PHYSICAL_TOKEN' | 'ENTRUST_LEGACY_TOKEN', tokenCreateParms?: TokenCreateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Token, any>>;
    deleteTokenUsingDELETE(tokenid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getTokenBySerialNumberUsingGET(sernum: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Token, any>>;
    getTokenUsingGET(tokenid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Token, any>>;
    modifyAssignedTokenUsingPUT(tokenid: string, assignedTokenParms: AssignedTokenParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    modifyTokenUsingPUT(tokenid: string, tokenParms: TokenParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    resetTokenUsingPUT(tokenid: string, resetParms: ResetParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    startActivateTokenUsingPOST(tokenid: string, activateParms?: ActivateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<ActivateResult, any>>;
    unassignTokenUsingPUT(tokenid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    unassignedTokenPageUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<TokensPage, any>>;
    unlockTokenUsingPUT(tokenid: string, unlockParms: UnlockParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UnlockResult, any>>;
    /**
     * UserAttributesApi - axios parameter creator
     */
    private UserAttributesApiAxiosParamCreator;
    /**
     * UserAttributesApi - functional programming interface
     * @export
     */
    private UserAttributesApiFp;
    createUserAttributeUsingPOST(userAttributeParms: UserAttributeParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserAttribute, any>>;
    deleteUserAttributeUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getUserAttributeUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserAttribute, any>>;
    listUserAttributesUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserAttribute[], any>>;
    modifyUserAttributeUsingPUT(id: string, userAttributeParms: UserAttributeParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserAttribute, any>>;
    /**
     * UserRBASettingsApi - axios parameter creator
     */
    private UserRBASettingsApiAxiosParamCreator;
    /**
     * UserRBASettingsApi - functional programming interface
     * @export
     */
    private UserRBASettingsApiFp;
    deleteUserLocationsUsingDELETE(userid: string, requestBody: Array<string>, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getUserRbaSettingsUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserRbaSettings, any>>;
    ipLocationFromIpAddressUsingPOST(ipLocation: IpLocation, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<IpLocation, any>>;
    listUserExpectedLocationsUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserExpectedLocations, any>>;
    listUserLocationsUsingGET(userid: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UserLocation[], any>>;
    setUserExpectedLocationsUsingPUT(userid: string, expectedLocation: Array<ExpectedLocation>, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateUserRbaSettingsUsingPUT(userid: string, userRbaSettings: UserRbaSettings, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    /**
     * UsersApi - axios parameter creator
     */
    private UsersApiAxiosParamCreator;
    /**
     * UsersApi - functional programming interface
     * @export
     */
    private UsersApiFp;
    createUserUsingPOST(userParms: UserParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<User, any>>;
    createUsersUsingPOST(createUsersParms: CreateUsersParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<CreateUserResult[], any>>;
    deleteUserUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    deleteUsersUsingDELETE(deleteUsersParms: DeleteUsersParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<DeleteUserResult[], any>>;
    modifyUserAOrganizationAssociationsUsingPUT(userid: string, userOrganizationParms: UserOrganizationParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    syncUserUsingPOST(syncUserParms: SyncUserParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<SyncUser, any>>;
    unlockUserUsingPUT(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    unsyncUserUsingPOST(unsyncUserParms: UnsyncUserParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateUserStateUsingPUT(id: string, userChangeStateParms: UserChangeStateParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateUserUsingPUT(id: string, userParms: UserParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateUsersUsingPUT(updateUsersParms: UpdateUsersParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UpdateUserResult[], any>>;
    userByExternalIdUsingPOST(userGetParms: UserGetParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<User, any>>;
    userByUseridUsingPOST(userGetParms: UserGetParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<User, any>>;
    userUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<User, any>>;
    usersPagedUsingPOST(searchParms: SearchParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<UsersPage, any>>;
    /**
     * WebhooksApi - axios parameter creator
     */
    private WebhooksApiAxiosParamCreator;
    /**
     * WebhooksApi - functional programming interface
     * @export
     */
    private WebhooksApiFp;
    createWebhookUsingPOST(webhookParms: WebhookParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Webhook, any>>;
    deleteWebhookUsingDELETE(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    getWebhooksUsingGET(options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Webhook[], any>>;
    readWebhookUsingGET(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Webhook, any>>;
    testWebhookUsingPOST(id: string, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<void, any>>;
    updateWebhookUsingPUT(id: string, webhookParms: WebhookParms, options?: AxiosRequestConfig): Promise<import("axios").AxiosResponse<Webhook, any>>;
}
export default API;
