No Overload Matches This Call with drizzle-orm and Postgres

I’m working with drizzle-orm to insert data into a PostgreSQL database using Node.js. However, I’m running into the following TypeScript error when trying to insert a post with an authorId that references a users table:

No overload matches this call.
  Overload 1 of 2, '(value: { title: string | SQL<unknown> | Placeholder<string, any>; content: string | SQL<unknown> | Placeholder<string, any>; }): PgInsertBase<PgTableWithColumns<{ name: "posts"; schema: undefined; columns: { ...; }; dialect: "pg"; }>, NodePgQueryResultHKT, undefined, false, never>', gave the following error.
    Object literal may only specify known properties, and 'authorId' does not exist in type '{ title: string | SQL<unknown> | Placeholder<string, any>; content: string | SQL<unknown> | Placeholder<string, any>; }'.

The issue arises when trying to insert an authorId (a foreign key) into the posts table that references the id of the users table.

Schema Definitions
Here is how I’ve defined my tables using drizzle-orm:

import { integer, pgTable, text, timestamp, varchar } from "drizzle-orm/pg-core";
import { usersTable } from "./users.schema";

export const posts = pgTable("posts", {
    id: integer().primaryKey().generatedAlwaysAsIdentity(),
    title: varchar({ length: 255 }).notNull(),
    content: text("content").notNull(),
    created: timestamp().defaultNow(),
    authorId: integer().references(() => usersTable.id) // Foreign key reference
});

The authorId column is supposed to store the user ID from the usersTable.

Insertion Code
In the main function, I’m trying to insert 50 posts with random data:

import { drizzle, NodePgDatabase } from "drizzle-orm/node-postgres";
import { Pool } from "pg";
import * as schema from "./schema/schema";
import "dotenv/config";
import { faker } from "@faker-js/faker";
import { randomInt } from "crypto";

const pool = new Pool({
    connectionString: process.env.DATABASE_URL,
    ssl: true
})

const db = drizzle(pool, { schema }) as NodePgDatabase<typeof schema>;

async function main() {
    const userIds = await Promise.all(
        Array(50).fill("").map(async () => {
            const user = await db.insert(schema.usersTable).values({
                email: faker.internet.email(),
                name: faker.person.fullName(),
                age: randomInt(1, 70)
            }).returning();
            return user[0].id;
        })
    );

    const postIds = await Promise.all(
        Array(50).fill("").map(async () => {
            const post = await db.insert(schema.posts).values({
                title: faker.lorem.sentence(5),
                content: faker.lorem.paragraph(),
                authorId: faker.helpers.arrayElement(userIds), // Select random userId
            }).returning();
            return post[0].id;
        })
    );
}

The Problem
The error indicates that the authorId field is not recognized as part of the posts table. Even though I defined it correctly in the schema, TypeScript fails to infer it during the insert.