{
  "name": "Address",
  "description": "Client addresses",
  "base": "Loggable",
  "log": {
    "model": "ClientLog",
    "relation": "client",
    "changedModelValue": "nickname"
  },
  "options": {
    "mysql": {
      "table": "address"
    }
  },
  "properties": {
    "id": {
      "type": "Number",
      "id": true,
      "description": "Identifier"
    },
    "nickname": {
      "type": "string",
      "required": true
    },
    "street": {
      "type": "string",
      "required": true
    },
    "city": {
      "type": "string",
      "required": true
    },
    "postalCode": {
      "type": "string"
    },
    "phone": {
      "type": "string"
    },
    "mobile": {
      "type": "string"
    },
    "isActive": {
      "type": "boolean"
    },
    "longitude": {
      "type": "Number"
    },
    "latitude": {
      "type": "Number"
    },
    "isEqualizated": {
      "type": "boolean"
    }
  },
  "validations": [],
  "relations": {
    "province": {
      "type": "belongsTo",
      "model": "Province",
      "foreignKey": "provinceFk"
    },
    "client": {
      "type": "belongsTo",
      "model": "Client",
      "foreignKey": "clientFk"
    },
    "agencyMode": {
      "type": "belongsTo",
      "model": "AgencyMode",
      "foreignKey": "agencyModeFk"
    },
    "observations": {
      "type": "hasMany",
      "model": "AddressObservation",
      "foreignKey": "addressFk"
    }
  }
}