input: 
  def create_basic_crud_api(app) -> None:
      """ 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 = Flask(__name__)
      >>> create_basic_crud_api(app)
      >>> app.config['SQLALCHEMY_DATABASE_URI'] =  'sqlite:///test.db'
      >>> db = SQLAlchemy(app)
      >>> class BlogPost(db.Model):
      ...     id = db.Column(db.Integer, primary_key=True)
      ...     title = db.Column(db.String(200))
      ...     content = db.Column(db.Text)
      ...     def serialize(self):
      ...         return {'id': self.id, 'title': self.title, 'content': self.content}
      >>> db.create_all()
      >>> client = app.test_client()
      >>> resp = client.post('/post', json={'title': 'First Post', 'content': 'This is the first post.'})
      >>> resp.json
      {'id': 1}
      >>> resp = client.get('/posts')
      >>> resp.json
      [{'id': 1, 'title': 'First Post', 'content': 'This is the first post.'}]
      >>> resp = client.get('/post/1')
      >>> resp.json
      {'id': 1, 'title': 'First Post', 'content': 'This is the first post.'}
      >>> resp = client.put('/post/1', json={'title': 'Updated Post', 'content': 'This is the updated post.'})
      >>> resp.json
      {'id': 1, 'title': 'Updated Post', 'content': 'This is the updated post.'}
      >>> resp = client.delete('/post/1')
      >>> resp.json
      {'message': 'Post deleted'}
      """
  
output:     
      from flask import Flask, request, jsonify
      from flask_sqlalchemy import SQLAlchemy
  
      @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({'id': new_post.id}), 201
  
      @app.route('/posts', methods=['GET'])
      def get_posts():
          posts = BlogPost.query.all()
          return jsonify([post.serialize() for post in posts])
  
      @app.route('/post/<int:post_id>', methods=['GET'])
      def get_post(post_id):
          post = BlogPost.query.get_or_404(post_id)
          return jsonify(post.serialize())
  
      @app.route('/post/<int:post_id>', methods=['PUT'])
      def update_post(post_id):
          post = BlogPost.query.get_or_404(post_id)
          data = request.json
          post.title = data['title']
          post.content = data['content']
          db.session.commit()
          return jsonify(post.serialize())
  
      @app.route('/post/<int:post_id>', methods=['DELETE'])
      def delete_post(post_id):
          post = BlogPost.query.get_or_404(post_id)
          db.session.delete(post)
          db.session.commit()
          return jsonify({'message': 'Post deleted'})
  