import Foundation
import ArgumentParser

struct AcknowledgementGenerator: ParsableCommand {
  static var configuration = CommandConfiguration(
      abstract: "A utility for generating acknowledgement SwiftUI View.",
      version: "1.0.0"
  )

  @Argument(help: "Resolved package path")
  var resolvedPackagePath: String

  @Argument(help: "Path for the default template file")
  var templatePath: String
  
  @Option(help: "Other URLs where to look to add acknoledgement from", transform: { URL(string: $0) })
  var urls: [URL?]
  
  @Option(help: "Output directory path where the SwiftUI will be written")
  var outputDirectoryPath: String = "."

  @Option(help: "Output file name")
  var outputFileName: String = "Acknowledgements.swift"

  @Option(help: "Header for acknoledgement view")
  var header: String = "Thanks to all peoples that helps us make this app possible."

  @Option(help: "Footer for acknoledgement view")
  var footer: String = "Generated by SwiftUI Acknowledgement Generator."

  @Flag(help: "Delete output file if already exist")
  var deleteOriginal: Bool = false

  @Flag(help: "debug mode")
  var debugMode: Bool = false
}
