import type { FieldMeta, MetaBuild, PgAttribute, PgCodec, PgTableResource } from './types';
export type AttributeInflector = (attrName: string, codec: PgCodec) => string;
export interface BuildContext {
    build: MetaBuild;
    inflectAttr: AttributeInflector;
}
export type TableResourceWithCodec = PgTableResource & {
    codec: PgCodec & {
        attributes: Record<string, PgAttribute>;
    };
};
export declare function createBuildContext(build: MetaBuild): BuildContext;
export declare function buildFieldList(attrNames: string[], codec: PgCodec, attributes: Record<string, PgAttribute>, context: BuildContext): FieldMeta[];
