jshiki
    Preparing search index...

    Interface OperatorOptions

    Defines which operators are allowed.

    const operatorOptions = {
    unary: { allow: ['!'] },
    binary: { allow: ['+', '-', '*', '/', '%'] },
    logical: { block: ['??'] },
    ternary: false,
    }
    interface OperatorOptions {
        binary?: BinaryOperatorOptions | null;
        logical?: LogicalOperatorOptions | null;
        ternary?: boolean;
        unary?: UnaryOperatorOptions | null;
    }
    Index

    Properties

    binary?: BinaryOperatorOptions | null

    Defines which binary operators are allowed. If defined, must provide an allow list or a block list, but not both. Valid options are +, -, *, **, /, %, <, >, <=, >=, ==, !=, ===, !==, |, &, <<, >>, >>>.

    // allows only binary operators '/', '%', '+', and '-'
    { binary: { allow: ['/', '%', '+', '-'] } }
    // allows any binary operator except '*', '**', and '&'
    { binary: { block: ['*', '**', '&'] } }
    logical?: LogicalOperatorOptions | null

    Defines which logical operators are allowed. If defined, must provide an allow list or a block list, but not both. Valid options are ||, &&, ??.

    // allows only logical operators '||' and '&&'
    { logical: { allow: ['||', '&&'] } }
    // allows any logical operator except '??'
    { logical: { block: ['??'] } }
    ternary?: boolean

    Whether or not the ternary/conditional operator is allowed. A value of true allows the ternary operator, false blocks it. Defaults to true.

    unary?: UnaryOperatorOptions | null

    Defines which unary operators are allowed. If defined, must provide an allow list or a block list, but not both. Valid options are -, +, !, ~, typeof.

    // allows only unary operators '!' and '+'
    { unary: { allow: ['!', '+'] } }
    // allows any unary operator except '-' and '~'
    { unary: { block: ['-', '~'] } }