fix this error : Assets\My\Scripts\DragonController.cs(8,13): error CS0246: The type or namespace name 'DragonInputActions' could not be found (are you missing a using directive or an assembly reference?)
in this script:

using UnityEngine;
using UnityEngine.InputSystem; // Important!!

public class DragonController : MonoBehaviour
{
    public DragonSettings settings; // Link Settings asset here

    private DragonInputActions inputActions;
    private Rigidbody rb;
    private Animator animator;

    private bool isFlying = false;
    private Vector2 movementInput;

    private void Awake()
    {
        inputActions = new DragonInputActions();
    }

    private void OnEnable()
    {
        inputActions.Enable();
        inputActions.Gameplay.Move.performed += OnMovePerformed;
        inputActions.Gameplay.Move.canceled += OnMoveCanceled;
        inputActions.Gameplay.FlyToggle.started += OnFlyToggle;
    }

    private void OnDisable()
    {
        inputActions.Gameplay.Move.performed -= OnMovePerformed;
        inputActions.Gameplay.Move.canceled -= OnMoveCanceled;
        inputActions.Gameplay.FlyToggle.started -= OnFlyToggle;
        inputActions.Disable();
    }

    private void Start()
    {
        rb = GetComponent<Rigidbody>();
        animator = GetComponent<Animator>();
    }

    private void Update()
    {
        HandleMovement();
    }

    private void HandleMovement()
    {
        float horizontal = movementInput.x;
        float vertical = movementInput.y;

        transform.Rotate(Vector3.up * horizontal * settings.rotationSpeed * Time.deltaTime);

        if (isFlying)
        {
            Vector3 forwardMove = transform.forward * vertical * settings.flySpeed * Time.deltaTime;
            rb.MovePosition(rb.position + forwardMove);

            animator.SetFloat("flyingDirection", horizontal);
        }
        else
        {
            Vector3 forwardMove = transform.forward * vertical * settings.crawlSpeed * Time.deltaTime;
            rb.MovePosition(rb.position + forwardMove);

            animator.SetFloat("crawlingDirection", horizontal);
        }
    }

    private void OnMovePerformed(InputAction.CallbackContext context)
    {
        movementInput = context.ReadValue<Vector2>();
    }

    private void OnMoveCanceled(InputAction.CallbackContext context)
    {
        movementInput = Vector2.zero;
    }

    private void OnFlyToggle(InputAction.CallbackContext context)
    {
        if (!isFlying)
        {
            TakeOff();
        }
        else
        {
            Land();
        }
    }

    private void TakeOff()
    {
        isFlying = true;
        animator.SetTrigger("isTakingOff");
        animator.SetBool("isFlying", true);
        rb.AddForce(Vector3.up * settings.liftForce, ForceMode.Impulse);
    }

    private void Land()
    {
        isFlying = false;
        animator.SetTrigger("isLanding");
        animator.SetBool("isFlying", false);
    }
}

I also have this asset attached to the script:
using UnityEngine;

[CreateAssetMenu(fileName = "DragonSettings", menuName = "Dragon/Settings", order = 1)]
public class DragonSettings : ScriptableObject
{
    [Header("Movement Settings")]
    public float crawlSpeed = 5f;
    public float flySpeed = 10f;
    public float rotationSpeed = 100f;

    [Header("Flight Settings")]
    public float liftForce = 15f;
    public float glideSpeed = 8f;
    public float hoverStability = 0.5f;

    [Header("Attack Settings")]
    public float fireCooldown = 1.5f;

    [Header("Roar Settings")]
    public float roarDuration = 2f;
}

I want a long-term solution as I want to use the dragon later on as a killstreak

fix the whole code and show me exatly how to implement it