Assuming that what you want by bar(; x::Int...) is that the value of the keyword arguments be Int, then I think you’re looking for:
bar(;x::Pairs{<:Any,<:Int}...) = ...
Note the <:Int instead of just Int makes it so it accepts bar() with no arguments (you can figure this out by defining bar(;x...) = typeof(x) and seeing that bar() returns a Pairs{Union{},Union{}} which is <:Pairs{<:Any,<:Int}, but not <:Pairs{<:Any,Int})