class ActiveRecord::ConnectionAdapters::TableDefinition

def primary_key(name, type = :primary_key, options = {})

Can be called multiple times, but this is probably not a good idea.
Appends a primary key definition to the table definition.
def primary_key(name, type = :primary_key, options = {})
  column(name, type, options.merge(:primary_key => true))
end