input: def create_crud_api() -> Flask:
      """ Create a basic CRUD API for the BlogPost model with Python/Flask. The API should include endpoints for creating a post, getting all posts, getting a single post, editing a post, and deleting a post.
      >>> app = create_crud_api()
      >>> # Test for creating a post
      >>> request_data = {'title': 'Test Post', 'content': 'This is a test content.'}
      >>> response = app.test_client().post('/post', json=request_data)
      >>> response.status_code == 200
      True
      >>> # Test for getting all posts
      >>> response = app.test_client().get('/posts')
      >>> response.status_code == 200
      True
      >>> # Test for getting a single post
      >>> post_id = response.json[0]['id']
      >>> response = app.test_client().get(f'/post/{post_id}')
      >>> response.status_code == 200
      True
      >>> # Test for editing a post
      >>> updated_data = {'title': 'Updated Test Post', 'content': 'This content is updated.'}
      >>> response = app.test_client().put(f'/post/{post_id}', json=updated_data)
      >>> response.status_code == 200
      True
      >>> # Test for deleting a post
      >>> response = app.test_client().delete(f'/post/{post_id}')
      >>> response.status_code == 200
      True
      """
output:     
      from flask import Flask, request, jsonify
      from flask_sqlalchemy import SQLAlchemy
  
      app = Flask(__name__)
      app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///blog.db'
      db = SQLAlchemy(app)
  
      class BlogPost(db.Model):
          id = db.Column(db.Integer, primary_key=True)
          title = db.Column(db.String(100), nullable=False)
          content = db.Column(db.Text, nullable=False)
  
      db.create_all()
  
      @app.route('/post', methods=['POST'])
      def create_post():
          data = request.json
          new_post = BlogPost(title=data['title'], content=data['content'])
          db.session.add(new_post)
          db.session.commit()
          return jsonify({'message': 'Post created successfully'}), 200
  
      @app.route('/posts', methods=['GET'])
      def get_posts():
          posts = BlogPost.query.all()
          return jsonify([{'id': post.id, 'title': post.title, 'content': post.content} for post in posts]), 200
  
      @app.route('/post/<int:post_id>', methods=['GET'])
      def get_post(post_id):
          post = BlogPost.query.get(post_id)
          if post:
              return jsonify({'id': post.id, 'title': post.title, 'content': post.content}), 200
          return jsonify({'message': 'Post not found'}), 404
  
      @app.route('/post/<int:post_id>', methods=['PUT'])
      def update_post(post_id):
          post = BlogPost.query.get(post_id)
          if post:
              data = request.json
              post.title = data['title']
              post.content = data['content']
              db.session.commit()
              return jsonify({'message': 'Post updated successfully'}), 200
          return jsonify({'message': 'Post not found'}), 404
  
      @app.route('/post/<int:post_id>', methods=['DELETE'])
      def delete_post(post_id):
          post = BlogPost.query.get(post_id)
          if post:
              db.session.delete(post)
              db.session.commit()
              return jsonify({'message': 'Post deleted successfully'}), 200
          return jsonify({'message': 'Post not found'}), 404
  
      return app
  