CREATE TABLE teams ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), name VARCHAR(255) NOT NULL, slug VARCHAR(255) UNIQUE NOT NULL, owner_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE, created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() ); CREATE TABLE team_members ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), team_id UUID NOT NULL REFERENCES teams(id) ON DELETE CASCADE, user_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE, role VARCHAR(50) NOT NULL DEFAULT 'member', created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), UNIQUE(team_id, user_id) ); CREATE INDEX idx_teams_owner ON teams(owner_id); CREATE INDEX idx_team_members_team ON team_members(team_id); CREATE INDEX idx_team_members_user ON team_members(user_id);