import { Predicate, Static } from '../types'; export declare const shape: (shape: T) => Predicate>; declare type ShapePredicateRecord = Record>; declare type StaticShape = { [P in { [K in keyof T]: Extract, undefined> extends never ? K : never; }[keyof T]]: Static; } & { [P in { [K in keyof T]: Extract, undefined> extends never ? never : K; }[keyof T]]?: Static; }; export {};