Internally, it represents integers as whatever type is necessary to hold them (up to and including bigints) and things that consume integers will take any of them (though might impose their own limits; you do not really want to use a number that will only fit in a bigint as a Unix file mode...)