type DeepPartial<T> = T extends object ? {
    [P in keyof T]?: DeepPartial<T[P]>;
} : T;

type DecimalPlaces = number;

type GlobalParameters = {
    decimalPlaces: DecimalPlaces;
};

type Content = {
    width: number | "device-width";
    initialScale: number;
    minimumWidth: number;
    maximumWidth: number;
    /** Alternative to `minimumWidth` */
    minWidth?: number;
    /** Alternative to `maximumWidth` */
    maxWidth?: number;
} & {
    [key: string]: string | number;
};

type Media = string;

type MediaSpecificParameters = {
    content: Content;
    media: Media;
};

declare const setParameters: (partialMediaSpecificParametersList: DeepPartial<MediaSpecificParameters>[], partialGlobalParameters?: Partial<GlobalParameters>) => void;

export { setParameters as apply };
