class_docstr: Allows for interaction with an file server.
  
  Connection should have a name and a path specified under extra:
  
  example:
  Connection Id: fs_test
  Connection Type: File (path)
  Host, Schema, Login, Password, Port: empty
  Extra: {"path": "/tmp"}
class_docstr_tok: ["Allows","for","interaction","with","an","file","server",".","Connection","should","have","a","name","and","a","path","specified","under","extra",":","example",":","Connection","Id",":","fs_test","Connection","Type",":","File","(","path",")","Host",",","Schema",",","Login",",","Password",",","Port",":","empty","Extra",":","{","``","path","''",":","``","\/tmp","''","}"]
code: def __init__(self, fs_conn_id: str = default_conn_name, **kwargs):
      super().__init__(**kwargs)
      conn = self.get_connection(fs_conn_id)
      self.basepath = conn.extra_dejson.get("path", "")
      self.conn = conn
  
file_path: airflow/airflow/hooks/filesystem.py
imports: from __future__ import annotations
  from pathlib import Path
  from typing import Any
  from airflow.hooks.base import BaseHook
label_desc: Use image node_id 3 to create a new FSHook object from inherited base classes: BaseHook with example: obj = FSHook(fs_conn_id)