This document introduces the concept of typed filesystems where every file has a specified type that is enforced. It discusses how immutable files under revision control could have an initial value and series of type-checked changes. Writing files would trigger a type check, with type-preserving writes committed immediately and other writes left "dirty" until later compatible changes. This allows flexibility in defining types while still enforcing them to avoid issues caused by files with inconsistent or unexpected data. Synergies with viewing files as sequences and a type-directed shell are also discussed.