docs: function main (params) {
    return new Promise((resolve, reject) => {
      var debug = typeof params.debug === 'boolean' ? params.debug : false
  
      if (typeof params !== 'object') {
        if (debug) console.log('Format ze starej wersji.')
        /** @throws Dane powinny być podane w formie obiektu, a nie są. */
        reject(new Error('Nieprawidłowy format danych.'))
        return
      }
      if (
        (typeof params.username === 'string' &&
          (params.username !== '' && params.username !== ' ')
        ) &&
        (
          (typeof params.password === 'string' &&
            (params.password !== '' && params.password !== ' ')
          ) ||
          (typeof params.hash === 'string' &&
            (params.hash !== '' && params.hash !== ' ')
          )
        )
      ) {
        if (debug) console.log('Loguję...')
        login(params).then(o => {
          resolve(new Client(params.username, o.agent, o.id, o.hash))
        }).catch(e => {
          reject(e)
        })
      } else {
        reject(new Error('Nieprawidłowy format danych.'))
      }
    })
  }