/**
 * Cloudflare traits - re-exports shared traits and adds Cloudflare-specific ones.
 */
export * from "@distilled.cloud/core/traits";
import * as AST from "effect/SchemaAST";
/** Symbol for error matchers (code + message pattern matching) */
export declare const errorMatchersSymbol: unique symbol;
export interface ErrorMatcher {
    code?: number;
    status?: number;
    message?: string | {
        includes: string;
    };
}
/**
 * Apply error matchers directly to a class's AST annotations.
 * Used for TaggedErrorClass where .pipe() on a class returns a schema
 * (not a class), breaking `extends ... .pipe(...)`.
 */
export declare const applyErrorMatchers: (cls: {
    ast: AST.AST;
}, matchers: ErrorMatcher[]) => void;
export declare const getErrorMatchers: (ast: AST.AST) => ErrorMatcher[] | undefined;
/** Symbol for content type override (e.g., multipart) */
export declare const contentTypeSymbol: unique symbol;
export declare const ContentType: (type: string) => import("@distilled.cloud/core/traits").Annotation;
export declare const getContentType: (ast: AST.AST) => string | undefined;
//# sourceMappingURL=traits.d.ts.map