printOptions() {
        const supportedAttributeNames = [
            'gridLines', 'gridLinesSet', 'headings', 'horizontalCentered', 'verticalCentered'];
        const checkAttributeName = this._getCheckAttributeNameHelper('printOptions', supportedAttributeNames);
        return new ArgHandler('Sheet.printOptions')
            .case(['string'], attributeName => {
                checkAttributeName(attributeName);
                return this._printOptionsNode.attributes[attributeName] === 1;
            })
            .case(['string', 'nil'], attributeName => {
                checkAttributeName(attributeName);
                delete this._printOptionsNode.attributes[attributeName];
                return this;
            })
            .case(['string', 'boolean'], (attributeName, attributeEnabled) => {
                checkAttributeName(attributeName);
                if (attributeEnabled) {
                    this._printOptionsNode.attributes[attributeName] = 1;
                    return this;
                } else {
                    return this.printOptions(attributeName, undefined);
                }
            })
            .handle(arguments);
    }
Set the print option given a valid print option attribute and a value.
@param {string} attributeName - Attribute name of the printOptions. See get print option for list of valid attributes.
@param {undefined|boolean} attributeEnabled - If `undefined` or `false` then the attribute is removed, otherwise the print option is enabled.
@returns {Sheet} The sheet.