input: Write a function to implement a basic CRUD API for the BlogPost model using 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.
  
  assert create_post({ 'title' : 'First Post', 'content' : 'This is the first post' }) == 'First Post'
  assert get_posts() == [{ 'title' : 'First Post', 'content' : 'This is the first post' }]
  assert get_post(1) == { 'title' : 'First Post', 'content' : 'This is the first post' }
  assert edit_post(1, { 'title' : 'Updated Post', 'content' : 'This is the updated post' }) == { 'title' : 'Updated Post', 'content' : 'This is the updated post' }
  assert delete_post(1) == { 'message' : 'Post deleted' }
  assert get_post(1) == None
output: posts = []
  post_id_counter = 1
  
  def create_post(post_data):
      global post_id_counter
      post = {
          'id': post_id_counter,
          'title': post_data['title'],
          'content': post_data['content']
      }
      posts.append(post)
      post_id_counter += 1
      return post['title']
  
  def get_posts():
      return posts
  
  def get_post(post_id):
      for post in posts:
          if post['id'] == post_id:
              return post
      return None
  
  def edit_post(post_id, updated_data):
      for post in posts:
          if post['id'] == post_id:
              post['title'] = updated_data['title']
              post['content'] = updated_data['content']
              return post
      return None
  
  def delete_post(post_id):
      global posts
      for post in posts:
          if post['id'] == post_id:
              posts.remove(post)
              return {'message': 'Post deleted'}
      return None