name: Node CI

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        versions:
          - node: '18.x'
          - node: '20.x'
          - node: '22.x'
          - node: '24.x'

    steps:
      - uses: actions/checkout@v4

      - name: Use Node.js ${{ matrix.versions.node }}
        uses: actions/setup-node@v4
        with:
          node-version: ${{ matrix.versions.node }}

      - name: enable corepack
        run: corepack enable
      - name: install
        run: yarn install --immutable
      - name: lint
        run: yarn run lint

      - name: check types
        run: yarn check-types
