parameters:
  "service-dir":
    default: "sdk/fabric"
emit:
  - "@azure-tools/typespec-autorest"
options:
  "@azure-tools/typespec-autorest":
    use-read-only-status-schema: true
    emitter-output-dir: "{project-root}/.."
    azure-resource-provider-folder: "resource-manager"
    emit-common-types-schema: "never"
    # `arm-resource-flattening` is only used for back-compat for specs existed on July 2024. All new service spec should NOT use this flag
    arm-resource-flattening: true
    output-file: "{azure-resource-provider-folder}/{service-name}/{version-status}/{version}/fabric.json"
  "@azure-tools/typespec-csharp":
    flavor: azure
    package-dir: "Azure.ResourceManager.Fabric"
    clear-output-folder: true
    namespace: "{package-dir}"
  "@azure-tools/typespec-python":
    package-dir: "azure-mgmt-fabric"
    flavor: "azure"
    package-name: "{package-dir}"
    generate-test: true
    generate-sample: true
  "@azure-tools/typespec-ts":
    azureSdkForJs: true
    isModularLibrary: true
    generateMetadata: true
    hierarchyClient: false
    experimentalExtensibleEnums: true
    enableOperationGroup: true
    package-dir: "arm-fabric"
    emitter-output-dir: "{project-root}/{service-dir}/{package-dir}"
    flavor: "azure"
    packageDetails:
      name: "@azure/arm-fabric"
  "@azure-tools/typespec-java":
    package-dir: "azure-resourcemanager-fabric"
    flavor: azure
    namespace: "com.azure.resourcemanager.fabric"
  "@azure-tools/typespec-go":
    service-dir: "sdk/resourcemanager/fabric"
    package-dir: "armfabric"
    module: "github.com/Azure/azure-sdk-for-go/{service-dir}/{package-dir}"
    fix-const-stuttering: true
    flavor: "azure"
    generate-examples: true
    generate-fakes: true
    head-as-boolean: true
    inject-spans: true
    remove-unreferenced-types: true
linter:
  extends:
    - "@azure-tools/typespec-azure-rulesets/resource-manager"
