export interface GraphQLDirectivesOptions { /** * Directives applied to every emitted GraphQL type along the response path * (Doc, Connection, Edge, PageInfo, Aggregations, bucket types, nested * struct types) and to the Query field declared in the manifest. Used for * AppSync auth modes — e.g. `["@aws_cognito_user_pools", "@aws_iam"]`. * Per-model `@graphqlDirectives(...)` overrides this list. Issue #121. */ default?: string[]; } export interface GraphQLEmitterOptions { emit?: boolean; "default-page-size"?: number; "max-page-size"?: number; "track-total-hits-up-to"?: number; /** * Byte threshold for the monolithic-vs-pipeline switch. Above the * threshold a projection emits as a 3-function pipeline; at or below it * emits as a single UNIT resolver. Default: 28000 (32K AppSync per-file * cap minus headroom). Issue #112. */ "monolithic-threshold-bytes"?: number; /** * `buckets` for the `auto_date_histogram` emitted when a * `@aggregatable("date_histogram", ...)` declares no bounds. It is the * ceiling on returned buckets, so it decides how wide a range still keeps * the declared interval before OpenSearch steps to a coarser one. Default: * 10000 — 833 years of monthly buckets, 27 years of daily, and an order of * magnitude under the 65,535 `search.max_buckets` a request may not exceed. * Issue #150. */ "auto-date-histogram-buckets"?: number; directives?: GraphQLDirectivesOptions; } export interface RestEmitterOptions { /** * Manifest `dataSource` value for REST entries so the CDK consumer knows * which AppSync HTTP data source to attach. Default: "HTTP". Issue #134. */ dataSourceName?: string; /** * Header name → dotted path into the resolver `ctx`, expanded into the * generated BASE_HEADERS (e.g. `x-user-id: identity.resolverContext.userId` * → `"x-user-id": ctx.identity.resolverContext.userId`). Absent config * yields only `Content-Type: application/json`. Issue #134. */ injectHeaders?: Record; /** * HTTP status code → GraphQL error type name, merged over the default * (409 → ConflictError, 403 → ForbiddenError; anything else falls through * to `Http`). Issue #134. */ errorMap?: Record; /** * Path segment prepended to every `resourcePath` in the generated resolver * and manifest entry. Must start with `/` and must not end with `/`. * Example: `/api/v1`. Default: `""` (current behavior). Issue #140. */ resourcePathPrefix?: string; /** * When set, all REST operations are emitted into a single SDL file with * this name (e.g. `"pets.graphql"`). Each type appears once and there is * a single Query/Mutation block. All manifest entries' `sdlFile` point * at this file. Issue #142. */ sdlFileName?: string; } export interface OpenSearchEmitterOptions { "output-file"?: string; "default-ignore-above"?: number; "package-name"?: string; "package-version"?: string; graphql?: GraphQLEmitterOptions; rest?: RestEmitterOptions; } export declare const $lib: import("@typespec/compiler").TypeSpecLibrary<{ "string-property-required": { readonly default: import("@typespec/compiler").CallableMessage<["decorator"]>; }; "nested-array-model-required": { readonly default: "Decorator @nested can only be applied to array properties whose element type is a model."; }; "projection-field-not-on-source": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "search-projection-without-index-name": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-index-settings-json": { readonly default: "@indexSettings value must be valid JSON."; }; "unboundable-date-histogram-interval": { readonly default: import("@typespec/compiler").CallableMessage<["interval", "interval"]>; }; "positive-boost-required": { readonly default: "Decorator @boost requires a factor greater than 0."; }; "positive-ignore-above-required": { readonly default: "Decorator @ignoreAbove requires a limit greater than 0."; }; "non-empty-search-as-required": { readonly default: "Decorator @searchAs requires a non-empty name string."; }; "spread-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-aggregation-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "aggregatable-requires-kind": { readonly default: "Decorator @aggregatable requires at least one aggregation kind argument."; }; "invalid-aggregation-options": { readonly default: import("@typespec/compiler").CallableMessage<["kind", "reason"]>; }; "invalid-filterable-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "filterable-requires-kind": { readonly default: "Decorator @filterable requires at least one filter kind argument."; }; "resolver-function-too-large": { readonly default: import("@typespec/compiler").CallableMessage<["file", "bytes"]>; }; "pipeline-too-many-functions": { readonly default: import("@typespec/compiler").CallableMessage<["name", "count"]>; }; "unsupported-scalar-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "scalar", "scalar"]>; }; "unsupported-field-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "kind"]>; readonly union: import("@typespec/compiler").CallableMessage<["field"]>; }; "unknown-join-key": { readonly default: import("@typespec/compiler").CallableMessage<["key", "model"]>; }; "join-index-required": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity", "entity", "key", "suggestedIndex"]>; }; "undeclared-join-resolution": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity"]>; }; "invalid-join-direction": { readonly default: import("@typespec/compiler").CallableMessage<["direction"]>; }; "join-requires-projection": { readonly default: import("@typespec/compiler").CallableMessage<["model"]>; }; "join-field-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "expectedType"]>; }; "join-field-ambiguous": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "fields"]>; }; "join-field-arity": { readonly default: import("@typespec/compiler").CallableMessage<["field", "actual", "direction", "expected"]>; }; "join-field-not-composed": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "entity", "entity", "entity"]>; }; "join-cycle": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "projection"]>; }; "join-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "aggregation-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["aggName", "first", "second"]>; }; "join-read-operation-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "key", "entity", "key"]>; }; "searchfilter-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>; }; }, Record, "searchable" | "keyword" | "nested" | "analyzer" | "boost" | "ignoreAbove" | "indexName" | "indexSettings" | "searchAs" | "aggregatable" | "filterable" | "searchInfer" | "searchSkip" | "sortable" | "graphqlDirectives" | "searchProjection" | "restResolver" | "graphqlId" | "resolvableBy" | "dependsOn">; export declare const reportDiagnostic: ; }; "nested-array-model-required": { readonly default: "Decorator @nested can only be applied to array properties whose element type is a model."; }; "projection-field-not-on-source": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "search-projection-without-index-name": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-index-settings-json": { readonly default: "@indexSettings value must be valid JSON."; }; "unboundable-date-histogram-interval": { readonly default: import("@typespec/compiler").CallableMessage<["interval", "interval"]>; }; "positive-boost-required": { readonly default: "Decorator @boost requires a factor greater than 0."; }; "positive-ignore-above-required": { readonly default: "Decorator @ignoreAbove requires a limit greater than 0."; }; "non-empty-search-as-required": { readonly default: "Decorator @searchAs requires a non-empty name string."; }; "spread-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-aggregation-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "aggregatable-requires-kind": { readonly default: "Decorator @aggregatable requires at least one aggregation kind argument."; }; "invalid-aggregation-options": { readonly default: import("@typespec/compiler").CallableMessage<["kind", "reason"]>; }; "invalid-filterable-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "filterable-requires-kind": { readonly default: "Decorator @filterable requires at least one filter kind argument."; }; "resolver-function-too-large": { readonly default: import("@typespec/compiler").CallableMessage<["file", "bytes"]>; }; "pipeline-too-many-functions": { readonly default: import("@typespec/compiler").CallableMessage<["name", "count"]>; }; "unsupported-scalar-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "scalar", "scalar"]>; }; "unsupported-field-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "kind"]>; readonly union: import("@typespec/compiler").CallableMessage<["field"]>; }; "unknown-join-key": { readonly default: import("@typespec/compiler").CallableMessage<["key", "model"]>; }; "join-index-required": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity", "entity", "key", "suggestedIndex"]>; }; "undeclared-join-resolution": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity"]>; }; "invalid-join-direction": { readonly default: import("@typespec/compiler").CallableMessage<["direction"]>; }; "join-requires-projection": { readonly default: import("@typespec/compiler").CallableMessage<["model"]>; }; "join-field-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "expectedType"]>; }; "join-field-ambiguous": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "fields"]>; }; "join-field-arity": { readonly default: import("@typespec/compiler").CallableMessage<["field", "actual", "direction", "expected"]>; }; "join-field-not-composed": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "entity", "entity", "entity"]>; }; "join-cycle": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "projection"]>; }; "join-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "aggregation-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["aggName", "first", "second"]>; }; "join-read-operation-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "key", "entity", "key"]>; }; "searchfilter-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>; }; }[C]>(program: import("@typespec/compiler").Program, diag: import("@typespec/compiler").DiagnosticReport<{ "string-property-required": { readonly default: import("@typespec/compiler").CallableMessage<["decorator"]>; }; "nested-array-model-required": { readonly default: "Decorator @nested can only be applied to array properties whose element type is a model."; }; "projection-field-not-on-source": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "search-projection-without-index-name": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-index-settings-json": { readonly default: "@indexSettings value must be valid JSON."; }; "unboundable-date-histogram-interval": { readonly default: import("@typespec/compiler").CallableMessage<["interval", "interval"]>; }; "positive-boost-required": { readonly default: "Decorator @boost requires a factor greater than 0."; }; "positive-ignore-above-required": { readonly default: "Decorator @ignoreAbove requires a limit greater than 0."; }; "non-empty-search-as-required": { readonly default: "Decorator @searchAs requires a non-empty name string."; }; "spread-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-aggregation-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "aggregatable-requires-kind": { readonly default: "Decorator @aggregatable requires at least one aggregation kind argument."; }; "invalid-aggregation-options": { readonly default: import("@typespec/compiler").CallableMessage<["kind", "reason"]>; }; "invalid-filterable-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "filterable-requires-kind": { readonly default: "Decorator @filterable requires at least one filter kind argument."; }; "resolver-function-too-large": { readonly default: import("@typespec/compiler").CallableMessage<["file", "bytes"]>; }; "pipeline-too-many-functions": { readonly default: import("@typespec/compiler").CallableMessage<["name", "count"]>; }; "unsupported-scalar-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "scalar", "scalar"]>; }; "unsupported-field-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "kind"]>; readonly union: import("@typespec/compiler").CallableMessage<["field"]>; }; "unknown-join-key": { readonly default: import("@typespec/compiler").CallableMessage<["key", "model"]>; }; "join-index-required": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity", "entity", "key", "suggestedIndex"]>; }; "undeclared-join-resolution": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity"]>; }; "invalid-join-direction": { readonly default: import("@typespec/compiler").CallableMessage<["direction"]>; }; "join-requires-projection": { readonly default: import("@typespec/compiler").CallableMessage<["model"]>; }; "join-field-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "expectedType"]>; }; "join-field-ambiguous": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "fields"]>; }; "join-field-arity": { readonly default: import("@typespec/compiler").CallableMessage<["field", "actual", "direction", "expected"]>; }; "join-field-not-composed": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "entity", "entity", "entity"]>; }; "join-cycle": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "projection"]>; }; "join-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "aggregation-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["aggName", "first", "second"]>; }; "join-read-operation-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "key", "entity", "key"]>; }; "searchfilter-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>; }; }, C, M>) => void, createDiagnostic: ; }; "nested-array-model-required": { readonly default: "Decorator @nested can only be applied to array properties whose element type is a model."; }; "projection-field-not-on-source": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "search-projection-without-index-name": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-index-settings-json": { readonly default: "@indexSettings value must be valid JSON."; }; "unboundable-date-histogram-interval": { readonly default: import("@typespec/compiler").CallableMessage<["interval", "interval"]>; }; "positive-boost-required": { readonly default: "Decorator @boost requires a factor greater than 0."; }; "positive-ignore-above-required": { readonly default: "Decorator @ignoreAbove requires a limit greater than 0."; }; "non-empty-search-as-required": { readonly default: "Decorator @searchAs requires a non-empty name string."; }; "spread-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-aggregation-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "aggregatable-requires-kind": { readonly default: "Decorator @aggregatable requires at least one aggregation kind argument."; }; "invalid-aggregation-options": { readonly default: import("@typespec/compiler").CallableMessage<["kind", "reason"]>; }; "invalid-filterable-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "filterable-requires-kind": { readonly default: "Decorator @filterable requires at least one filter kind argument."; }; "resolver-function-too-large": { readonly default: import("@typespec/compiler").CallableMessage<["file", "bytes"]>; }; "pipeline-too-many-functions": { readonly default: import("@typespec/compiler").CallableMessage<["name", "count"]>; }; "unsupported-scalar-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "scalar", "scalar"]>; }; "unsupported-field-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "kind"]>; readonly union: import("@typespec/compiler").CallableMessage<["field"]>; }; "unknown-join-key": { readonly default: import("@typespec/compiler").CallableMessage<["key", "model"]>; }; "join-index-required": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity", "entity", "key", "suggestedIndex"]>; }; "undeclared-join-resolution": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity"]>; }; "invalid-join-direction": { readonly default: import("@typespec/compiler").CallableMessage<["direction"]>; }; "join-requires-projection": { readonly default: import("@typespec/compiler").CallableMessage<["model"]>; }; "join-field-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "expectedType"]>; }; "join-field-ambiguous": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "fields"]>; }; "join-field-arity": { readonly default: import("@typespec/compiler").CallableMessage<["field", "actual", "direction", "expected"]>; }; "join-field-not-composed": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "entity", "entity", "entity"]>; }; "join-cycle": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "projection"]>; }; "join-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "aggregation-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["aggName", "first", "second"]>; }; "join-read-operation-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "key", "entity", "key"]>; }; "searchfilter-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>; }; }[C]>(diag: import("@typespec/compiler").DiagnosticReport<{ "string-property-required": { readonly default: import("@typespec/compiler").CallableMessage<["decorator"]>; }; "nested-array-model-required": { readonly default: "Decorator @nested can only be applied to array properties whose element type is a model."; }; "projection-field-not-on-source": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "search-projection-without-index-name": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-index-settings-json": { readonly default: "@indexSettings value must be valid JSON."; }; "unboundable-date-histogram-interval": { readonly default: import("@typespec/compiler").CallableMessage<["interval", "interval"]>; }; "positive-boost-required": { readonly default: "Decorator @boost requires a factor greater than 0."; }; "positive-ignore-above-required": { readonly default: "Decorator @ignoreAbove requires a limit greater than 0."; }; "non-empty-search-as-required": { readonly default: "Decorator @searchAs requires a non-empty name string."; }; "spread-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name"]>; }; "invalid-aggregation-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "aggregatable-requires-kind": { readonly default: "Decorator @aggregatable requires at least one aggregation kind argument."; }; "invalid-aggregation-options": { readonly default: import("@typespec/compiler").CallableMessage<["kind", "reason"]>; }; "invalid-filterable-kind": { readonly default: import("@typespec/compiler").CallableMessage<["kind"]>; }; "filterable-requires-kind": { readonly default: "Decorator @filterable requires at least one filter kind argument."; }; "resolver-function-too-large": { readonly default: import("@typespec/compiler").CallableMessage<["file", "bytes"]>; }; "pipeline-too-many-functions": { readonly default: import("@typespec/compiler").CallableMessage<["name", "count"]>; }; "unsupported-scalar-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "scalar", "scalar"]>; }; "unsupported-field-type": { readonly default: import("@typespec/compiler").CallableMessage<["field", "kind"]>; readonly union: import("@typespec/compiler").CallableMessage<["field"]>; }; "unknown-join-key": { readonly default: import("@typespec/compiler").CallableMessage<["key", "model"]>; }; "join-index-required": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity", "entity", "key", "suggestedIndex"]>; }; "undeclared-join-resolution": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "entity"]>; }; "invalid-join-direction": { readonly default: import("@typespec/compiler").CallableMessage<["direction"]>; }; "join-requires-projection": { readonly default: import("@typespec/compiler").CallableMessage<["model"]>; }; "join-field-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "expectedType"]>; }; "join-field-ambiguous": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "direction", "projection", "fields"]>; }; "join-field-arity": { readonly default: import("@typespec/compiler").CallableMessage<["field", "actual", "direction", "expected"]>; }; "join-field-not-composed": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "entity", "entity", "entity"]>; }; "join-cycle": { readonly default: import("@typespec/compiler").CallableMessage<["field", "entity", "projection"]>; }; "join-field-collision": { readonly default: import("@typespec/compiler").CallableMessage<["name", "sourceModel"]>; }; "aggregation-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["aggName", "first", "second"]>; }; "join-read-operation-missing": { readonly default: import("@typespec/compiler").CallableMessage<["entity", "key", "entity", "key"]>; }; "searchfilter-name-collision": { readonly default: import("@typespec/compiler").CallableMessage<["typeName"]>; }; }, C, M>) => import("@typespec/compiler").Diagnostic, StateKeys: Record<"searchable" | "keyword" | "nested" | "analyzer" | "boost" | "ignoreAbove" | "indexName" | "indexSettings" | "searchAs" | "aggregatable" | "filterable" | "searchInfer" | "searchSkip" | "sortable" | "graphqlDirectives" | "searchProjection" | "restResolver" | "graphqlId" | "resolvableBy" | "dependsOn", symbol>; //# sourceMappingURL=lib.d.ts.map