/** * @typedef {import('../types.js').Options} Options * @typedef {import('../types.js').State} State */ import {checkBullet} from './check-bullet.js' /** * @param {State} state * @returns {Exclude} */ export function checkBulletOther(state) { const bullet = checkBullet(state) const bulletOther = state.options.bulletOther if (!bulletOther) { return bullet === '*' ? '-' : '*' } if (bulletOther !== '*' && bulletOther !== '+' && bulletOther !== '-') { throw new Error( 'Cannot serialize items with `' + bulletOther + '` for `options.bulletOther`, expected `*`, `+`, or `-`' ) } if (bulletOther === bullet) { throw new Error( 'Expected `bullet` (`' + bullet + '`) and `bulletOther` (`' + bulletOther + '`) to be different' ) } return bulletOther }