1. A system comprising: a processor and a memory including a module configured to cause the processor to: provide static type checking against an external data source in an interactive editing environment by: providing an extension point for the external data source, the extension point accessed by a public application programming interface, the application programming interface accepting an extension customized for the external data source, implementing the application programming interface by creating a synthetic class for the external data source, the synthetic class enabling static type checking for the external data source.