class ClientMultiAxisGroupBy implements ClientGroupBy<ClientLevelAxis> {

    public void addAxis(ClientGroupAxisEnum axis, ClientLevelAxis clientLevelAxis) {
        if (axis.equals(ClientGroupAxisEnum.ROWS)) {
            this.rows = clientLevelAxis;
        } else if (axis.equals(ClientGroupAxisEnum.COLUMNS)) {
            this.columns = clientLevelAxis;
        } else {
            throw new IllegalArgumentException(String.format("unsupported axis %s for MultiAxisGroupBy", axis.toString()));
        }
    }

    public  ClientMultiAxisGroupBy();
    public  ClientMultiAxisGroupBy(ClientMultiAxisGroupBy source);

}