# Imports

Programs can import declarations (types, functions, variables, etc.) from other programs.

Imports are declared using the `import` keyword.

It can either be followed by a location, which imports all declarations; or it can be followed by the names of the declarations that should be imported, followed by the `from` keyword, and then followed by the location.

If importing a local file, the location is a string literal, and the path to the file.

> 🚧 Status: Imports from local files are not currently implemented.

If importing an external type in a different account, the location is an address literal, and the address of the account where the declarations are deployed to and published.

```
// Import the type `Counter` from a local file.
//
import Counter from "examples/counter.cdc"

// Import the type `Counter` from an external account.
//
import Counter from 0x299F20A29311B9248F12
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://max-daunarovich.gitbook.io/flow-network/introduction/imports.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
