var apiType;
//
/**
* @typedef {Object} BridgeBaseResponse
* @property {?String} message
* @property {Object} data
*/
/**
* @typedef {Object} BridgeBaseFormResponse
* @property {Boolean} status
* @property {Object} data
*/
//
//
/**
* @typedef {Object} TicketData
* @property {String} id
* @property {String} address
* @property {String} description
* @property {String} statusId
* @property {String} statusName
* @property {String} public ex. "y"|"n"
* @property {String} userEditable ex. "y"|"n"
* @property {String} userDraftable ex. "y"|"n"
* @property {String} latitude ex. "49.5645710",
* @property {String} longitude ex. "25.6501800",
* @property {String} rating ex. 0..1
* @property {String} noteForModerator
* @property {String} noteForUser
* @property {String} alias ex. "2342-15-Kvitnia-Street-12-Ternopil",
* @property {String} languageId ex. "ukr",
* @property {String} added ex. "0000-00-00 00:00:00"
* @property {String} changed ex. "0000-00-00 00:00:00"
*/
/**
* @typedef {Object} TicketImageData
* @property {String} imageId
* @property {String} name
* @property {String} filenameFs
* @property {String} thumbnailUrl
* @property {String} imageUrl
*/
//
//
/**
* @typedef {Object} TagData
* @property {TagDataTypeCode} typeCode
* @property {String} typeName
* @property {String} internalTypeId
* @property {String} id
* @property {String} objectId
* @property {String} name
* @property {String} dataType
* @property {String} required
* @property {String} attributeCode
* @property {String} uofmPre
* @property {String} uofmPost
* @property {String} numericValue
* @property {String} decimalMin
* @property {String} decimalMax
* @property {String} decimalRound
* @property {String} textValue
* @property {String} textIsLong
* @property {String} datetimeValue
* @property {String} datetimeName
* @property {String} datetimeOutputFormatJs
*/
/**
* @typedef {String} TagDataTypeCode "amenity"|"estatetype"|"extamenity"|"genericattribute"|"geoattribute"|"locality"|"neighborhood"|"roofmaterial"|"rootamenity"|"rootgeo"|"rootsubmission"|"street"|"submissiontype"|"supply"|"wallmaterial"
*/
/**
* @typedef {Object} TagGroup
* @property {TagDataTypeCode} typeCode
* @property {String} typeName
* @property {String} internalTypeId
* @property {Array.} list
*/
/**
* @typedef {Object} GroupTag
* @property {String} id
* @property {String} objectId
* @property {String} name
* @property {String} dataType
* @property {String} required
* @property {String} attributeCode
* @property {String} uofmPre
* @property {String} uofmPost
* @property {String} numericValue
* @property {String} decimalMin
* @property {String} decimalMax
* @property {String} decimalRound
* @property {String} textValue
* @property {String} textIsLong
* @property {String} datetimeValue
* @property {String} datetimeName
* @property {String} datetimeOutputFormatJs
*/
/**
* @typedef {Object} TagShortInfo
* @property {String} id
* @property {String} typeName
* @property {String} name
* @property {String} canEdit "y"|"n"
*/
/**
* @typedef {Object} TagNamesInfo
* @property {String} ukr
* @property {String} rus
* @property {String} eng
*/
/**
* @typedef {Object} TagLinkLinkInfo
* @property {Array.} tag
* @property {Array.} parent
* @property {Array.} child
* @property {Array.} recommendParent
* @property {Array.} recommendChild
*/
/**
* @readonly
* @enum {String}
*/
apiType.TagDataTypeCode = {
amenity: 'amenity',
estatetype: 'estatetype',
extamenity: 'extamenity',
genericattribute: 'genericattribute',
geoattribute: 'geoattribute',
locality: 'locality',
neighborhood: 'neighborhood',
roofmaterial: 'roofmaterial',
rootamenity: 'rootamenity',
rootgeo: 'rootgeo',
rootsubmission: 'rootsubmission',
street: 'street',
submissiontype: 'submissiontype',
supply: 'supply',
wallmaterial: 'wallmaterial'
};
//
//
/**
* @typedef {Object} SearchTagGroup
* @property {TagDataTypeCode} typeCode
* @property {String} typeName
* @property {Array.} list
*/
/**
* @typedef {Object} SearchGroupTag
* @property {String} id
* @property {String} name
* @property {String} collapsed
* @property {String} selected
* @property {String} dataType
* @property {String} required
* @property {String} uofmPre
* @property {String} uofmPost
* @property {String} decimalMin
* @property {String} decimalMax
* @property {String} decimalRound
* @property {String} textIsLong
* @property {String} datetimeName
* @property {String} datetimeOutputFormatJs
* @property {String} valueLowNumeric
* @property {String} valueHighNumeric
* @property {String} valueLowDatetime
* @property {String} valueHighDatetime
*/
/**
* @typedef {Object} SearchTicketGroup
* @property {String} id
* @property {String} alias
* @property {String} rating
* @property {String} address
* @property {String} description
* @property {String} statusId
* @property {String} statusName
* @property {String} latitude
* @property {String} longitude
* @property {String} imageCount
* @property {Array.} tags
*/
//
/**
* @typedef {Object} NodeMetaData
* @property {String} added
* @property {String} changed
* @property {String} addedUserId
* @property {String} changedUserId
* @property {String} addedUserName
* @property {String} changedUserName
* @property {String} addedIp
* @property {String} changedIp
*/
/**
* @typedef {Object} PaginationInfo
* @property {Number} pageSize
* @property {Number} totalCount
* @property {Number} pageCount
* @property {Number} currentPageIndex
*/
/**
* @typedef {Object} UserFullInfo
* @property {String} id
* @property {String} roleId user|manager|admin
* @property {String} enabled "y"
* @property {String} name
* @property {String} login
* @property {String} email
* @property {String} phone
* @property {String} birthDate W3C format
* @property {String} preferredLanguage 3 char code
*/