import { ContainerInput , Container , ContainerOutput , EmbeddableStart , } from '../../../../../src/plugins/embeddable/public' ; import { TimeRange } from '../../../../../src/plugins/data/public' ; /**
 * interfaces are not allowed to specify a sub-set of the required types until
 * https://github.com/microsoft/TypeScript/issues/15300 is fixed so we use a type
 * here instead
 */ export type InheritedChildrenInput = { timeRange : TimeRange ; id ? : string ; } ; interface ContainerTimeRangeInput extends ContainerInput < InheritedChildrenInput > { timeRange : TimeRange ; } const TIME_RANGE_CONTAINER = 'TIME_RANGE_CONTAINER' ; export class TimeRangeContainer extends Container < InheritedChildrenInput , ContainerTimeRangeInput , ContainerOutput > { public readonly type = TIME_RANGE_CONTAINER ; constructor ( initialInput , getFactory , parent ? ) { super ( initialInput , { embeddableLoaded : { } } , getFactory , parent ) ; } public getInheritedInput ( ) { return { timeRange : this . input . timeRange } ; } public render ( ) { } public reload ( ) { } }