panes() {
        const supportedStates = ['split', 'frozen', 'frozenSplit'];
        const supportedActivePanes = ['bottomLeft', 'bottomRight', 'topLeft', 'topRight'];
        const checkStateName = this._getCheckAttributeNameHelper('pane.state', supportedStates);
        const checkActivePane = this._getCheckAttributeNameHelper('pane.activePane', supportedActivePanes);
        const sheetViewNode = this._getOrCreateSheetViewNode();
        let paneNode = xmlq.findChild(sheetViewNode, 'pane');
        return new ArgHandler('Sheet.pane')
            .case(() => {
                if (paneNode) {
                    const result = _.cloneDeep(paneNode.attributes);
                    if (!result.state) result.state = 'split';
                    return result;
                }
            })
            .case(['nil'], () => {
                xmlq.removeChild(sheetViewNode, 'pane');
                return this;
            })
            .case(['object'], paneAttributes => {
                const attributes = _.assign({ activePane: 'bottomRight' }, paneAttributes);
                checkStateName(attributes.state);
                checkActivePane(attributes.activePane);
                if (paneNode) {
                    paneNode.attributes = attributes;
                } else {
                    paneNode = {
                        name: "pane",
                        attributes,
                        children: []
                    };
                    xmlq.appendChild(sheetViewNode, paneNode);
                }
                return this;
            })
            .handle(arguments);
    }
Sets sheet view pane options
@param {PaneOptions|null|undefined} paneOptions sheet view pane options
@return {Sheet} The sheet