Skip to content

[V] createDiagnostic

createDiagnostic: <C, M>(diag) => Diagnostic;
Type Parameter
C extends | "multiple-services" | "client-service" | "union-null" | "union-circular" | "invalid-access" | "invalid-usage" | "conflicting-multipart-model-usage" | "discriminator-not-constant" | "discriminator-not-string" | "wrong-client-decorator" | "unsupported-kind" | "server-param-not-path" | "unexpected-http-param-type" | "multiple-response-types" | "no-corresponding-method-param" | "unsupported-protocol" | "no-emitter-name" | "unsupported-generic-decorator-arg-type" | "empty-client-name" | "override-parameters-mismatch" | "duplicate-client-name" | "duplicate-client-name-warning" | "client-name-ineffective" | "example-loading" | "duplicate-example-file" | "example-value-no-mapping" | "flatten-polymorphism" | "conflict-access-override" | "duplicate-decorator" | "empty-client-namespace" | "unexpected-pageable-operation-return-type" | "invalid-alternate-type" | "invalid-initialized-by" | "invalid-deserializeEmptyStringAsNull-target-type" | "api-version-not-string" | "invalid-encode-for-collection-format" | "no-discriminated-unions" | "non-head-bool-response-decorator" | "require-versioned-service" | "missing-service-versions" | "invalid-client-doc-mode" | "multiple-param-alias" | "client-location-conflict" | "client-location-wrong-type" | "client-location-duplicate" | "legacy-hierarchy-building-conflict" | "legacy-hierarchy-building-circular-reference" | "missing-scope" | "external-library-version-mismatch" | "invalid-mark-as-lro-target" | "mark-as-lro-ineffective" | "api-version-undefined"
M extends string | number | symbol
ParameterType
diagDiagnosticReport<{ api-version-not-string: { default: "Api version must be a string or a string enum"; }; api-version-undefined: { default: CallableMessage<["version"]>; }; client-location-conflict: { default: "When there is `@client` or `@operationGroup` decorator, `@clientLocation` decorator will be ignored."; modelPropertyToClientInitialization: CallableMessage<["parameterName"]>; modelPropertyToString: "`@clientLocation` can only move model properties to interfaces or namespaces."; operationToOperation: "`@clientLocation` cannot be used to move an operation to another operation. Operations can only be moved to interfaces or namespaces."; }; client-location-duplicate: { default: "`@clientLocation`'s target should not duplicate with defined namespace or interface under `@service` namespace."; }; client-location-wrong-type: { default: "`@clientLocation` could only move operation to the interface or namespace belong to the root namespace with `@service`."; }; client-name-ineffective: { default: CallableMessage<["name"]>; override: CallableMessage<["name", "originalMethodName"]>; }; client-service: { default: CallableMessage<["name"]>; }; conflict-access-override: { default: "@access override conflicts with the access calculated from operation or other @access override."; }; conflicting-multipart-model-usage: { default: CallableMessage<["modelName", "modelName", "modelName"]>; }; discriminator-not-constant: { default: CallableMessage<["discriminator"]>; }; discriminator-not-string: { default: CallableMessage<["discriminator", "discriminatorValue"]>; }; duplicate-client-name: { default: CallableMessage<["name", "scope"]>; nonDecorator: CallableMessage<["name", "scope"]>; }; duplicate-client-name-warning: { default: CallableMessage<["name", "scope"]>; nonDecorator: CallableMessage<["name", "scope"]>; }; duplicate-decorator: { default: CallableMessage<["decoratorName"]>; }; duplicate-example-file: { default: CallableMessage<["filename", "title", "operationId"]>; }; empty-client-name: { default: "Cannot pass an empty value to the @clientName decorator"; }; empty-client-namespace: { default: "Cannot pass an empty value to the @clientNamespace decorator"; }; example-loading: { default: CallableMessage<["filename", "error"]>; noDirectory: CallableMessage<["directory"]>; noOperationId: CallableMessage<["filename"]>; }; example-value-no-mapping: { default: CallableMessage<["relativePath", "value"]>; }; external-library-version-mismatch: { default: CallableMessage<["libraryName", "versionA", "versionB"]>; }; flatten-polymorphism: { default: "Cannot flatten property of polymorphic type."; }; invalid-access: { default: “Access value must be “public” or “internal”.”; }; invalid-alternate-type: { default: CallableMessage<["kindName"]>; }; invalid-client-doc-mode: { default: CallableMessage<["mode"]>; }; invalid-deserializeEmptyStringAsNull-target-type: { default: "@deserializeEmptyStringAsNull can only be applied to `ModelProperty` of type 'string' or a `Scalar` derived from 'string'."; }; invalid-encode-for-collection-format: { default: "Only encode of `ArrayEncoding.pipeDelimited` and `ArrayEncoding.spaceDelimited` is supported for collection format."; }; invalid-initialized-by: { default: CallableMessage<["message"]>; }; invalid-mark-as-lro-target: { default: CallableMessage<[]>; }; invalid-usage: { default: "Usage value must be one of: 2 (input), 4 (output), 256 (json), or 512 (xml)."; }; legacy-hierarchy-building-circular-reference: { default: "@hierarchyBuilding decorator causes recursive base type reference."; }; legacy-hierarchy-building-conflict: { default: CallableMessage<["childModel", "parentModel"]>; }; mark-as-lro-ineffective: { default: CallableMessage<[]>; }; missing-scope: { default: CallableMessage<["decoratorName"]>; }; missing-service-versions: { default: CallableMessage<["serviceName", "missingVersions"]>; }; multiple-param-alias: { default: CallableMessage<["originalName", "firstParamAlias"]>; }; multiple-response-types: { default: CallableMessage<["operation"]>; }; multiple-services: { default: "Multiple services found. Only the first service will be used; others will be ignored."; }; no-corresponding-method-param: { default: CallableMessage<["paramName", "methodName"]>; }; no-discriminated-unions: { default: "Discriminated unions are not supported. Please redefine the type using model with hierarchy and `@discriminator` decorator."; }; no-emitter-name: { default: "Can not find name for your emitter, please check your emitter name."; }; non-head-bool-response-decorator: { default: CallableMessage<["operationName"]>; }; override-parameters-mismatch: { default: CallableMessage<["methodName", "checkParameter"]>; }; require-versioned-service: { default: CallableMessage<["serviceName", "decoratorName"]>; }; server-param-not-path: { default: CallableMessage<["templateArgumentName", "templateArgumentType"]>; }; unexpected-http-param-type: { default: CallableMessage<["paramName", "expectedType", "actualType"]>; }; unexpected-pageable-operation-return-type: { default: "The response object for the pageable operation is either not a paging model, or is not correctly decorated with @nextLink and @pageItems."; }; union-circular: { default: "Cannot have a union containing self."; }; union-null: { default: "Cannot have a union containing only null types."; }; unsupported-generic-decorator-arg-type: { default: CallableMessage<["decoratorName"]>; }; unsupported-kind: { default: CallableMessage<["kind"]>; }; unsupported-protocol: { default: "Currently we only support HTTP and HTTPS protocols"; }; wrong-client-decorator: { default: "@client or @operationGroup should decorate namespace or interface in client.tsp"; }; }, C, M>

Diagnostic