eslint/grouped-accessor-pairs Style 
What it does 
Require grouped accessor pairs in object literals and classes
Why is this bad? 
While it is allowed to define the pair for a getter or a setter anywhere in an object or class definition, it’s considered a best practice to group accessor functions for the same property.
Examples 
Examples of incorrect code for this rule:
const foo = {
  get a() {
    return this.val;
  },
  b: 1,
  set a(value) {
    this.val = value;
  },
};Examples of correct code for this rule:
const foo = {
  get a() {
    return this.val;
  },
  set a(value) {
    this.val = value;
  },
  b: 1,
};Examples of incorrect code for this rule with the getBeforeSet option:
const foo = {
  set a(value) {
    this.val = value;
  },
  get a() {
    return this.val;
  },
};Examples of correct code for this rule with the getBeforeSet option:
const foo = {
  get a() {
    return this.val;
  },
  set a(value) {
    this.val = value;
  },
};Examples of incorrect code for this rule with the setBeforeGet option:
const foo = {
  get a() {
    return this.val;
  },
  set a(value) {
    this.val = value;
  },
};Examples of correct code for this rule with the setBeforeGet option:
const foo = {
  set a(value) {
    this.val = value;
  },
  get a() {
    return this.val;
  },
};Options 
This rule accepts two arguments:
- A string value to control the order of the getter/setter pairs: - "anyOrder"(default): Accessors can be in any order
- "getBeforeSet": Getters must come before setters
- "setBeforeGet": Setters must come before getters
 
- An object with the following option: - enforceForTSTypes(boolean, default: false): When enabled, also checks TypeScript interfaces and type aliases for grouped accessor pairs
 
TypeScript 
When enforceForTSTypes is enabled, this rule also applies to TypeScript interfaces and type aliases:
Examples of incorrect TypeScript code:
interface Foo {
  get a(): string;
  someProperty: string;
  set a(value: string);
}
type Bar = {
  get b(): string;
  someProperty: string;
  set b(value: string);
};Examples of correct TypeScript code:
interface Foo {
  get a(): string;
  set a(value: string);
  someProperty: string;
}
type Bar = {
  get b(): string;
  set b(value: string);
  someProperty: string;
};How to use 
To enable this rule in the CLI or using the config file, you can use:
oxlint --deny grouped-accessor-pairs{
  "rules": {
    "grouped-accessor-pairs": "error"
  }
}