name: {{projectName}}
description: {{description}}
version: 0.0.1
homepage:

environment:
  sdk: {{dartSdkVersionBounds}}
  flutter: ">=3.3.0"

dependencies:
  flutter:
    sdk: flutter
{{#web}}
  flutter_web_plugins:
    sdk: flutter
{{/web}}
  plugin_platform_interface: ^2.0.2

dev_dependencies:
{{#withFfiPluginHook}}
  ffi: ^2.0.1
  ffigen: ^6.1.2
{{/withFfiPluginHook}}
  flutter_test:
    sdk: flutter
  flutter_lints: ^2.0.0

# For information on the generic Dart part of this file, see the
# following page: https://dart.dev/tools/pub/pubspec

# The following section is specific to Flutter packages.
flutter:
  # This section identifies this Flutter project as a plugin project.
  # The 'pluginClass' specifies the class (in Java, Kotlin, Swift, Objective-C, etc.)
  # which should be registered in the plugin registry. This is required for
  # using method channels.
  # The Android 'package' specifies package in which the registered class is.
  # This is required for using method channels on Android.
  # The 'ffiPlugin' specifies that native code should be built and bundled.
  # This is required for using `dart:ffi`.
  # All these are used by the tooling to maintain consistency when
  # adding or updating assets for this project.
{{#withFfiPluginHook}}
  #
  # Please refer to README.md for a detailed explanation.
  plugin:
    platforms:
{{#no_platforms}}
    # This FFI plugin project was generated without specifying any
    # platforms with the `--platform` argument. If you see the `some_platform` map below, remove it and
    # then add platforms following the instruction here:
    # https://flutter.dev/docs/development/packages-and-plugins/developing-packages#plugin-platforms
    # -------------------
      some_platform:
        ffiPlugin: true
    # -------------------
{{/no_platforms}}
{{#android}}
      android:
        ffiPlugin: true
{{/android}}
{{#ios}}
      ios:
        ffiPlugin: true
{{/ios}}
{{#linux}}
      linux:
        ffiPlugin: true
{{/linux}}
{{#macos}}
      macos:
        ffiPlugin: true
{{/macos}}
{{#windows}}
      windows:
        ffiPlugin: true
{{/windows}}
{{/withFfiPluginHook}}
{{#withPlatformChannelPluginHook}}
  plugin:
    platforms:
{{#no_platforms}}
    # This plugin project was generated without specifying any
    # platforms with the `--platform` argument. If you see the `some_platform` map below, remove it and
    # then add platforms following the instruction here:
    # https://flutter.dev/docs/development/packages-and-plugins/developing-packages#plugin-platforms
    # -------------------
      some_platform:
        pluginClass: somePluginClass
    # -------------------
{{/no_platforms}}
{{#android}}
      android:
        package: {{androidIdentifier}}
        pluginClass: {{pluginClass}}
{{/android}}
{{#ios}}
      ios:
        pluginClass: {{pluginClass}}
{{/ios}}
{{#linux}}
      linux:
        pluginClass: {{pluginClass}}
{{/linux}}
{{#macos}}
      macos:
        pluginClass: {{pluginClass}}
{{/macos}}
{{#windows}}
      windows:
        pluginClass: {{pluginClass}}CApi
{{/windows}}
{{#web}}
      web:
        pluginClass: {{pluginDartClass}}Web
        fileName: {{projectName}}_web.dart
{{/web}}
{{/withPlatformChannelPluginHook}}

  # To add assets to your plugin package, add an assets section, like this:
  # assets:
  #   - images/a_dot_burr.jpeg
  #   - images/a_dot_ham.jpeg
  #
  # For details regarding assets in packages, see
  # https://flutter.dev/assets-and-images/#from-packages
  #
  # An image asset can refer to one or more resolution-specific "variants", see
  # https://flutter.dev/assets-and-images/#resolution-aware

  # To add custom fonts to your plugin package, add a fonts section here,
  # in this "flutter" section. Each entry in this list should have a
  # "family" key with the font family name, and a "fonts" key with a
  # list giving the asset and other descriptors for the font. For
  # example:
  # fonts:
  #   - family: Schyler
  #     fonts:
  #       - asset: fonts/Schyler-Regular.ttf
  #       - asset: fonts/Schyler-Italic.ttf
  #         style: italic
  #   - family: Trajan Pro
  #     fonts:
  #       - asset: fonts/TrajanPro.ttf
  #       - asset: fonts/TrajanPro_Bold.ttf
  #         weight: 700
  #
  # For details regarding fonts in packages, see
  # https://flutter.dev/custom-fonts/#from-packages
