Optionally and gradually-typed languages allow types to be introducedto dynamic code as needed. While this approach allows some gradualmovement from dynamically to statically-typed code, it requiresrewriting object-constructing code to use conventional static types.We introduce a flexible notion of type, deemed ;;locus types;;, thataims to minimize syntactic burden and the need for refactoring whenintroducing types to dynamic code. Locus types are gained by objectsthat pass through an annotated code site, following the creed of ;;codeis types;;. Their structure is inferred from local type informationcomputed through flow-based type refinement. The design ofLocusTypeScript, a language extending TypeScript with locus types, isdetailed. Tooling support, building on that of TypeScript, forprogramming with locus types is described. As well, the generalproperties and applicability of locus types are explored.LocusTypeScript;;s simple algorithm for computing stable flow-basedrefinement types is presented. The implications and performance impactof making locus types sound are discussed.