import type { HttpHeader, OperationGroup, Parameter, Property } from "@autorest/codemodel"; import { Aspect, Metadata, Security } from "@autorest/codemodel"; import type { DeepPartial } from "@azure-tools/codegen"; import type { ArrayKnownEncoding } from "@azure-tools/typespec-client-generator-core"; import type { XmlSerializationFormat } from "./formats/xml.js"; export interface Client extends Aspect { /** All operations */ operationGroups: Array; globalParameters?: Array; security: Security; serviceVersion?: ServiceVersion; /** * Parent client of this client, if exists. */ parent?: Client; /** * Sub clients of this client, if exists. */ subClients: Array; /** * Whether the Builder class has a public method (e.g. "buildSubClient") to initiate this client. */ buildMethodPublic: boolean; /** * Whether the parent client has a public accessor method (e.g. "getSubClient") to initiate this client. */ parentAccessorPublic: boolean; } export declare class Client extends Aspect implements Client { constructor(name: string, description: string, objectInitializer?: DeepPartial); private get globals(); addGlobalParameters(parameters: Parameter[]): void; /** * Add a sub Client to Client. * * @param subClient the sub Client * @param buildMethodPublic the sub Client can be initialized by its ClientBuilder * @param parentAccessorPublic the sub Client can be accessed by its parent Client */ addSubClient(subClient: Client, buildMethodPublic: boolean, parentAccessorPublic: boolean): void; } export declare class ServiceVersion extends Metadata { constructor(name: string, description: string, initializer?: DeepPartial); } export interface EncodedSchema { /** * The encoded type -- the type on wire. * E.g., the type for SDK maybe "int32", but type on wire be "string". */ encode?: string; } export interface EncodedProperty { /** * The encoding of array items. * The type for SDK would "SdkArrayType" with a "valueType", the type on wire be "string". */ arrayEncoding?: ArrayKnownEncoding; } export declare class PageableContinuationToken { /** * The parameter of the operation as continuationToken in API request. */ parameter: Parameter; /** * The reference to response body property of the operation as continuationToken in API request. * Array because the property may be at "links.nextToken". */ responseProperty?: Array; /** * The reference to response header of the operation as continuationToken in API request. */ responseHeader?: HttpHeader; constructor(parameter: Parameter, responseProperty?: Property[], responseHeader?: HttpHeader); } export interface Serializable { /** * The serialization format for the type or property. */ serialization?: { xml?: XmlSerializationFormat; }; } //# sourceMappingURL=client.d.ts.map