eslint-plugin-ft-flow
Version: 
Flowtype linting rules for ESLint by flow-typed
24 lines (20 loc) • 586 B
Flow
import {
  getTokenAfterParens, getTokenBeforeParens,
} from '../../utilities';
export default (context, report) => {
  const sourceCode = context.getSourceCode();
  return (objectTypeIndexer) => {
    // type X = { [a: b]: c }
    //              ^
    report({
      colon: getTokenBeforeParens(sourceCode, objectTypeIndexer.key),
      node: objectTypeIndexer,
    });
    // type X = { [a: b]: c }
    //                  ^
    report({
      colon: sourceCode.getTokenAfter(getTokenAfterParens(sourceCode, objectTypeIndexer.key)),
      node: objectTypeIndexer,
    });
  };
};