@microsoft.azure/autorest.incubator
Version:
AutoRest incubator project
30 lines • 2.12 kB
TypeScript
import { Schema } from '#csharp/lowlevel-generator/code-model';
import { Interface } from '#csharp/code-dom/interface';
import { Namespace } from '#csharp/code-dom/namespace';
import { OneOrMoreStatements } from '#csharp/code-dom/statements/statement';
import { EnhancedTypeDeclaration } from '#csharp/schema/extended-type-declaration';
import { ModelClass } from '#csharp/lowlevel-generator/model/model-class';
import { State } from '../generator';
import { KnownMediaType } from '#common/media-types';
import { Variable } from '#csharp/code-dom/variable';
import { Expression, ExpressionOrLiteral } from '#csharp/code-dom/expression';
export declare class ModelInterface extends Interface implements EnhancedTypeDeclaration {
implementation: ModelClass;
state: State;
readonly schema: Schema;
deserializeFromContainerMember(mediaType: KnownMediaType, container: ExpressionOrLiteral, serializedName: string, defaultValue: Expression): Expression;
deserializeFromNode(mediaType: KnownMediaType, node: ExpressionOrLiteral, defaultValue: Expression): Expression;
/** emits an expression to deserialize content from a string */
deserializeFromString(mediaType: KnownMediaType, content: ExpressionOrLiteral, defaultValue: Expression): Expression | undefined;
/** emits an expression serialize this to a HttpContent */
serializeToContent(mediaType: KnownMediaType, value: ExpressionOrLiteral): Expression;
serializeToNode(mediaType: KnownMediaType, value: ExpressionOrLiteral, serializedName: string): Expression;
serializeToContainerMember(mediaType: KnownMediaType, value: ExpressionOrLiteral, container: Variable, serializedName: string): OneOrMoreStatements;
readonly isXmlAttribute: boolean;
readonly isRequired: boolean;
validatePresence(property: Variable): OneOrMoreStatements;
validateValue(property: Variable): OneOrMoreStatements;
readonly hasHeaderProperties: boolean;
constructor(parent: Namespace, schema: Schema, implementation: ModelClass, state: State, objectInitializer?: Partial<ModelInterface>);
}
//# sourceMappingURL=interface.d.ts.map