import { Pixels } from '../common/geometry' ; internal export interface Dimensions { top : number ; left : number ; width : number ; height : number ; } internal export interface Size { width : number ; height : number ; } public export interface PerSideDistance { top : number ; bottom : number ; left : number ; right : number ; } public export type Margins = PerSideDistance ; public export type Padding = PerSideDistance ; public export interface SimplePadding { outer : Pixels ; inner : Pixels ; } internal export const innerPad = ( padding , minPadding = 0 ) => Math . max ( minPadding , typeof padding === 'number' ? padding : padding ?. inner ?? 0 ) ; internal export const outerPad = ( padding , minPadding = 0 ) => Math . max ( minPadding , typeof padding === 'number' ? padding : padding ?. outer ?? 0 ) ; internal export const verticalPad = ( padding , minPadding = 0 ) => Math . max ( minPadding , typeof padding === 'number' ? padding * 2 : padding . top + padding . bottom ) ; internal export const horizontalPad = ( padding , minPadding = 0 ) => Math . max ( minPadding , typeof padding === 'number' ? padding * 2 : padding . left + padding . right ) ; internal export const pad = ( padding , direction , minPadding = 0 ) => Math . max ( minPadding , typeof padding === 'number' ? padding : padding [ direction ] ) ;