Casting can hide errors. It's better to assign it to a variable first that has a type declaration.
const dog: Dog = {
breed: "Airedale",
age: 3
}
printDog(dog)
An IIFE is safe too: printDog(((): Dog => ({
breed: "Airedale",
age: 3
})())