Generic client type