import { Responsive } from './types.mjs'; declare function breakpointMapper, K extends keyof T, R extends Record>(breakpoints: Record, targetObject: T, callback: (breakpoint: number, value: Exclude) => R): R[]; /** * 반응형 디자인을 위한 유틸리티 함수입니다. * `Responsive` 타입을 사용하는 값을 반응형으로 변환합니다. * ReactNode를 반응형으로 변환해야 한다면 mapResponsiveElement를 사용해주세요. */ declare function mapResponsive | any, K extends keyof T, R extends Record>(breakpoints: Record, targetObject: T, callback: (breakpoint: number, value: T extends Record ? T[K] : T) => R): R[]; /** * mapResponsive와 달리 ReactNode를 반응형으로 변환할 때 사용됩니다. * 일반적인 자료구조를 반응형으로 변환하는 경우는 mapResponsive를 사용해주세요. * ReactNode를 반응형으로 변환하는 경우는 mapResponsiveElement를 사용해주세요. */ declare function mapResponsiveElement | any, K extends keyof T, R extends Record>(breakpoints: Record, targetObject: T, callback: (breakpoint: number, value: T extends Record ? T[K] : T) => R): R[]; /** * Responsive 타입의 값을 다른 Responsive 타입으로 매핑하는 함수 * @param source 원본 Responsive 값 * @param valueMap 원본 값을 대상 값으로 변환하는 매핑 객체 * @returns 매핑된 Responsive 값 * * @example * ```ts * const valueMap = { * sm: "captionSb", * md: "bodyB", * lg: "subTitle2", * }; * const responsiveValue = mapResponsiveValue("sm", valueMap); // "captionSb" * const responsiveValue2 = mapResponsiveValue({ sm: "sm", lg: "lg" }, valueMap); // { sm: "captionSb", lg: "subTitle2" } * ``` */ declare function mapResponsiveValue(source: Responsive, valueMap: Record): Responsive; export { breakpointMapper, mapResponsive, mapResponsiveElement, mapResponsiveValue };