@autorest/go
Version:
AutoRest Go Generator
163 lines • 8.55 kB
TypeScript
import * as type from './type.js';
export type ParameterKind = 'required' | 'optional' | 'literal' | 'flag' | ClientSideDefault;
export interface ClientSideDefault {
defaultValue: type.LiteralValue;
}
export interface Parameter {
name: string;
docs: type.Docs;
type: type.PossibleType;
kind: ParameterKind;
byValue: boolean;
group?: ParameterGroup;
location: ParameterLocation;
}
export declare function isClientSideDefault(kind: ParameterKind): kind is ClientSideDefault;
export type ParameterLocation = 'client' | 'method';
export interface ParameterGroup {
name: string;
docs: type.Docs;
groupName: string;
required: boolean;
location: ParameterLocation;
params: Array<Parameter>;
}
export type HeaderType = type.BytesType | type.ConstantType | type.PrimitiveType | type.TimeType | type.LiteralValue;
export interface HeaderParameter extends Parameter {
headerName: string;
type: HeaderType;
}
export type CollectionFormat = 'csv' | 'ssv' | 'tsv' | 'pipes';
export interface HeaderCollectionParameter extends Parameter {
headerName: string;
type: type.SliceType;
collectionFormat: CollectionFormat;
}
export interface HeaderMapParameter extends Parameter {
headerName: string;
type: type.MapType;
collectionPrefix: string;
}
export type PathParameterType = type.BytesType | type.ConstantType | type.PrimitiveType | type.TimeType | type.LiteralValue;
export interface PathParameter extends Parameter {
pathSegment: string;
type: PathParameterType;
isEncoded: boolean;
}
export interface PathCollectionParameter extends Parameter {
pathSegment: string;
type: type.SliceType;
isEncoded: boolean;
collectionFormat: CollectionFormat;
}
export type QueryParameterType = type.BytesType | type.ConstantType | type.PrimitiveType | type.TimeType | type.LiteralValue;
export interface QueryParameter extends Parameter {
queryParameter: string;
type: QueryParameterType;
isEncoded: boolean;
}
export type ExtendedCollectionFormat = CollectionFormat | 'multi';
export interface QueryCollectionParameter extends Parameter {
queryParameter: string;
type: type.SliceType;
isEncoded: boolean;
collectionFormat: ExtendedCollectionFormat;
}
export type URIParameterType = type.ConstantType | type.PrimitiveType;
export interface URIParameter extends Parameter {
uriPathSegment: string;
type: URIParameterType;
}
export type BodyFormat = 'JSON' | 'XML' | 'Text' | 'binary';
export interface BodyParameter extends Parameter {
bodyFormat: BodyFormat;
contentType: string;
xml?: type.XMLInfo;
}
export interface PartialBodyParameter extends Parameter {
serializedName: string;
format: 'JSON' | 'XML';
xml?: type.XMLInfo;
}
export interface FormBodyParameter extends Parameter {
formDataName: string;
}
export interface FormBodyCollectionParameter extends Parameter {
formDataName: string;
type: type.SliceType;
collectionFormat: ExtendedCollectionFormat;
}
export interface MultipartFormBodyParameter extends Parameter {
multipartForm: true;
}
export interface ResumeTokenParameter extends Parameter {
isResumeToken: true;
}
export declare function isBodyParameter(param: Parameter): param is BodyParameter;
export declare function isPartialBodyParameter(param: Parameter): param is PartialBodyParameter;
export declare function isFormBodyParameter(param: Parameter): param is FormBodyParameter;
export declare function isFormBodyCollectionParameter(param: Parameter): param is FormBodyCollectionParameter;
export declare function isMultipartFormBodyParameter(param: Parameter): param is MultipartFormBodyParameter;
export declare function isHeaderParameter(param: Parameter): param is HeaderParameter;
export declare function isHeaderCollectionParameter(param: Parameter): param is HeaderCollectionParameter;
export declare function isHeaderMapParameter(param: Parameter): param is HeaderMapParameter;
export declare function isPathParameter(param: Parameter): param is PathParameter;
export declare function isPathCollectionParameter(param: Parameter): param is PathCollectionParameter;
export declare function isQueryParameter(param: Parameter): param is QueryParameter;
export declare function isQueryCollectionParameter(param: Parameter): param is QueryCollectionParameter;
export declare function isURIParameter(param: Parameter): param is URIParameter;
export declare function isResumeTokenParameter(param: Parameter): param is ResumeTokenParameter;
export declare function isRequiredParameter(param: Parameter): boolean;
export declare function isLiteralParameter(param: Parameter): boolean;
export declare class Parameter implements Parameter {
constructor(name: string, type: type.PossibleType, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class BodyParameter extends Parameter implements BodyParameter {
constructor(name: string, bodyFormat: BodyFormat, contentType: string, type: type.PossibleType, kind: ParameterKind, byValue: boolean);
}
export declare class PartialBodyParameter extends Parameter implements PartialBodyParameter {
constructor(name: string, serializedName: string, format: 'JSON' | 'XML', type: type.PossibleType, kind: ParameterKind, byValue: boolean);
}
export declare class FormBodyParameter extends Parameter implements FormBodyParameter {
constructor(name: string, formDataName: string, type: type.PossibleType, kind: ParameterKind, byValue: boolean);
}
export declare class FormBodyCollectionParameter extends Parameter implements FormBodyCollectionParameter {
constructor(name: string, formDataName: string, type: type.SliceType, collectionFormat: ExtendedCollectionFormat, kind: ParameterKind, byValue: boolean);
}
export declare class MultipartFormBodyParameter extends Parameter implements MultipartFormBodyParameter {
constructor(name: string, type: type.PossibleType, kind: ParameterKind, byValue: boolean);
}
export declare class HeaderParameter extends Parameter implements HeaderParameter {
constructor(name: string, headerName: string, type: HeaderType, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class HeaderCollectionParameter extends Parameter implements HeaderCollectionParameter {
constructor(name: string, headerName: string, type: type.SliceType, collectionFormat: CollectionFormat, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class HeaderMapParameter extends Parameter implements HeaderMapParameter {
constructor(name: string, headerName: string, type: type.MapType, collectionPrefix: string, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class PathParameter extends Parameter implements PathParameter {
constructor(name: string, pathSegment: string, isEncoded: boolean, type: PathParameterType, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class PathCollectionParameter extends Parameter implements PathCollectionParameter {
constructor(name: string, pathSegment: string, isEncoded: boolean, type: type.SliceType, collectionFormat: CollectionFormat, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class QueryParameter extends Parameter implements QueryParameter {
constructor(name: string, queryParam: string, isEncoded: boolean, type: QueryParameterType, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class QueryCollectionParameter extends Parameter implements QueryCollectionParameter {
constructor(name: string, queryParam: string, isEncoded: boolean, type: type.SliceType, collectionFormat: ExtendedCollectionFormat, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class URIParameter extends Parameter implements URIParameter {
constructor(name: string, uriPathSegment: string, type: type.ConstantType | type.PrimitiveType, kind: ParameterKind, byValue: boolean, location: ParameterLocation);
}
export declare class ResumeTokenParameter extends Parameter implements ResumeTokenParameter {
constructor();
}
export declare class ClientSideDefault implements ClientSideDefault {
constructor(defaultValue: type.LiteralValue);
}
export declare class ParameterGroup implements ParameterGroup {
constructor(name: string, groupName: string, required: boolean, location: ParameterLocation);
}
//# sourceMappingURL=param.d.ts.map