import type { AllOfSchemaV4_0_0, AwsLambdaResolverV4_0_0, BasicResolverV4_0_0, ComposeResolverV4_0_0, DirectiveConfigV4_0_0, DirectiveMappingArrayV4_0_0, DirectiveMappingMapV4_0_0, GraphqlResolverV4_0_0, ObjectSchemaV4_0_0, OneOfSchemaV4_0_0, ParameterOpMappingV4_0_0, ParameterOpNestedV4_0_0, ParameterOpOpV4_0_0, ParameterOpV4_0_0, ParameterOpValueV4_0_0, ParameterSerializeContentOptionsV4_0_0, ParameterSerializeOptionsV4_0_0, ParameterSerializeStyleOptionsV4_0_0, PropertySchemaV4_0_0, RefSchemaLegacyV4_0_0, RefSchemaV4_0_0, RestResolverV4_0_0, ReturnShapeArraySchemaV4_0_0, TakeshapeResolverV4_0_0, UtilResolverV4_0_0 } from '../project-schema/index.ts';
/** Resolver Type Utils **/
/**
 * Only tests that the shape is right, not that the name is correct. That's a job for the validator.
 */
export declare function isBasicResolver(resolver: unknown): resolver is BasicResolverV4_0_0;
export declare function isComposeResolver(resolver: unknown): resolver is ComposeResolverV4_0_0;
export declare function isTakeshapeResolver(resolver: BasicResolverV4_0_0): resolver is TakeshapeResolverV4_0_0;
export declare function isGraphqlResolver(resolver: BasicResolverV4_0_0): resolver is GraphqlResolverV4_0_0;
export declare function isRestResolver(resolver: BasicResolverV4_0_0): resolver is RestResolverV4_0_0;
export declare function isAwsLambdaResolver(resolver: BasicResolverV4_0_0): resolver is AwsLambdaResolverV4_0_0;
export declare function isUtilResolver(resolver: BasicResolverV4_0_0): resolver is UtilResolverV4_0_0;
/** Directive Mapping Utils **/
/**
 * Determine whether the ambiguous Directive structure is a DirectiveMappingMap
 */
export declare function isDirectiveMappingMap(maybeMap: DirectiveMappingMapV4_0_0 | DirectiveMappingArrayV4_0_0 | DirectiveConfigV4_0_0): maybeMap is DirectiveMappingMapV4_0_0;
/**
 * Determine whether the ambiguous Directive structure is a DirectiveMappingArray
 */
export declare function isDirectiveMappingArray(maybeArray: DirectiveMappingMapV4_0_0 | DirectiveMappingArrayV4_0_0 | DirectiveConfigV4_0_0): maybeArray is DirectiveMappingArrayV4_0_0;
/**
 * Determine whether the ambiguous Directive structure is a DirectiveConfig array
 */
export declare function isDirectiveConfig(maybeConfig: DirectiveMappingMapV4_0_0 | DirectiveMappingArrayV4_0_0 | DirectiveConfigV4_0_0): maybeConfig is DirectiveConfigV4_0_0;
/**
 * Determine whether a ParameterSerializeOption is a content type serializer
 */
export declare function isParameterSerializeContentOptions(maybeContent: ParameterSerializeOptionsV4_0_0): maybeContent is ParameterSerializeContentOptionsV4_0_0;
/**
 * Determine whether an unknown variable is a `ParameterOp`
 */
export declare function isParameterOp(maybeOp: unknown): maybeOp is ParameterOpV4_0_0;
/**
 * Determine whether a `ParameterOp` is a `ParameterOpNested`
 */
export declare function isParameterOpNested(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpNestedV4_0_0;
/**
 * Determine whether a `ParameterOp` is a `ParameterOpMapping`
 */
export declare function isParameterOpMapping(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpMappingV4_0_0;
/**
 * Determine whether a `ParameterOp` is a `ParameterOpMapping`
 */
export declare function isParameterOpValue(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpValueV4_0_0;
/**
 * Determine whether a `ParameterOp` is a `ParameterOpOp`
 */
export declare function isParameterOpOp(maybeOp: ParameterOpV4_0_0): maybeOp is ParameterOpOpV4_0_0;
/**
 * Determine whether a ParameterSerializeOption is a style serializer
 */
export declare function isParameterSerializeStyleOptions(maybeStyle: ParameterSerializeOptionsV4_0_0): maybeStyle is ParameterSerializeStyleOptionsV4_0_0;
/** Typeguards for different types of shape schemas **/
export declare function isRefSchema(maybeRefSchema: PropertySchemaV4_0_0): maybeRefSchema is RefSchemaV4_0_0 | RefSchemaLegacyV4_0_0;
export declare function isAllOfSchema(schema: PropertySchemaV4_0_0): schema is AllOfSchemaV4_0_0;
export declare function isOneOfSchema(schema: PropertySchemaV4_0_0): schema is OneOfSchemaV4_0_0;
export declare function isArraySchema(schema: PropertySchemaV4_0_0): schema is ReturnShapeArraySchemaV4_0_0;
export declare function isObjectSchema(schema: PropertySchemaV4_0_0): schema is ObjectSchemaV4_0_0;
